From xen-users-bounces@lists.xenproject.org Wed Sep 01 09:31:57 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 01 Sep 2021 09:31:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.176156.320627 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLMaJ-0006BQ-1N; Wed, 01 Sep 2021 09:31:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 176156.320627; Wed, 01 Sep 2021 09:31:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLMaI-0006BI-Qu; Wed, 01 Sep 2021 09:31:06 +0000
Received: by outflank-mailman (input) for mailman id 176156;
 Wed, 01 Sep 2021 09:31:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tzcz=NX=xenbits.xen.org=iwj@srs-us1.protection.inumbo.net>)
 id 1mLMaH-000673-Hm
 for xen-users@lists.xen.org; Wed, 01 Sep 2021 09:31:05 +0000
Received: from mail.xenproject.org (unknown [104.130.215.37])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c4b943f9-c6d1-4fca-8114-98ddd83101fd;
 Wed, 01 Sep 2021 09:30:59 +0000 (UTC)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mLMa2-0006zy-LC; Wed, 01 Sep 2021 09:30:50 +0000
Received: from iwj by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mLMa2-0006VB-JU; Wed, 01 Sep 2021 09:30:50 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: c4b943f9-c6d1-4fca-8114-98ddd83101fd
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=0ePqXSIKBX48B2cK5m/t9DhA8yei6wa4P1bd3JfsXGo=; b=kYO0tI9pMZm8aDxEs1YWieGE2x
	IRgOiwDuDSuka3bNS2aX7mgC2LjKHfzVooAmUJCF8c0RTL+3zRsGfZUYv+/EUZPNyGcQQvGkuoJWK
	Vnqo0rBsKy4nyKJpJYeXw/SlCjvsnzuZmxb38YS4TVuEw8rbWwPjERCs+JkHvInS2pW8=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 380 v3 (CVE-2021-28698) - long running
 loops in grant table handling
Message-Id: <E1mLMa2-0006VB-JU@xenbits.xenproject.org>
Date: Wed, 01 Sep 2021 09:30:50 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2021-28698 / XSA-380
                               version 3

              long running loops in grant table handling

UPDATES IN VERSION 3
====================

New bugfix patch on top of the prior set.

ISSUE DESCRIPTION
=================

In order to properly monitor resource use, Xen maintains information on
the grant mappings a domain may create to map grants offered by other
domains.  In the process of carrying out certain actions, Xen would
iterate over all such entries, including ones which aren't in use
anymore and some which may have been created but never used.  If the
number of entries for a given domain is large enough, this iterating of
the entire table may tie up a CPU for too long, starving other domains
or causing issues in the hypervisor itself.

Note that a domain may map its own grants, i.e. there is no need for
multiple domains to be involved here.  A pair of "cooperating" guests
may, however, cause the effects to be more severe.

IMPACT
======

Malicious or buggy guest kernels may be able to mount a Denial of
Service (DoS) attack affecting the entire system.

VULNERABLE SYSTEMS
==================

All Xen versions from at least 3.2 onwards are vulnerable in principle.

Systems running with default settings are generally believed to not be
vulnerable.

MITIGATION
==========

The problem can be avoided by reducing the number of grant mappings Xen
would allow guests to establish.  For example, setting
"gnttab_max_maptrack_frames=256" on the Xen command line (available
from Xen 4.5 onwards) or "max_maptrack_frames=256" in the xl domain
configurations (available from Xen 4.10 onwards) may be low enough for
all hardware Xen is able to run on.  Note that except for driver
domains, guests don't normally have a need to establish grant mappings,
i.e. they may be okay to run with "max_maptrack_frames=0" in their xl
domain configurations.

- From Xen 4.14 onwards it is also possible to alter the system wide upper
bound of the number of grant mappings Xen would allow guests to
establish by writing to the /params/gnttab_max_maptrack_frames
hypervisor file system node.  Note however that changing the value this
way will only affect guests yet to be created on the respective host.

CREDITS
=======

This issue was discovered by Andrew Cooper of Citrix.

RESOLUTION
==========

Applying the appropriate pair of attached patches resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

To address an issue observed with some compiler versions, another patch
needs to be applied on top. This has been committed to the unstable
tree (commit hash b6da9d0414d69c2682214ee3ecf9816fcac500d0) only so far.
This patch is listed last below.

xsa380/xsa380-[12].patch        xen-unstable - Xen 4.15.x
xsa380/xsa380-4.14-?.patch      Xen 4.14.x
xsa380/xsa380-4.13-?.patch      Xen 4.13.x
xsa380/xsa380-4.12-?.patch      Xen 4.12.x
xsa380/xsa380-4.11-?.patch      Xen 4.11.x
xsa380/xsa380-3.patch           Xen 4.15.x - Xen 4.11.x

$ sha256sum xsa380* xsa380*/*
3b1938277665c195f6822a1170c50a853efa6bc3dcd6b2b0b9bbb0849a57bbf6  xsa380.meta
65411a0fd05d534ed2238b259aa2877331ac0e79f2dda80b424f34fffcce108a  xsa380/xsa380-1.patch
e6cd6d345abaad38e10d6f680fe881e874e35a7295199e5430bacd209f0b7304  xsa380/xsa380-2.patch
1ead53a28dedb0a502a700d9ea933e89e385c1582f4790f558a11d0d39e9d374  xsa380/xsa380-3.patch
f3b486aa99a75ab54f9e26e21a721a413f993b27dbc3e6f2fda976fe20ddbae3  xsa380/xsa380-4.11-1.patch
96a09c05ca87fe3590064ca6d269ca47b97c732401cb593ff1068ac91009f51a  xsa380/xsa380-4.11-2.patch
496063cd4641258e1854a77f626cdd86c866c3ed8603bdc2ff9ab709008c84a7  xsa380/xsa380-4.12-1.patch
d850e1263e89c7a718f2cddcfb639fe4a5095a1852fc35499ed16a4075d225e5  xsa380/xsa380-4.12-2.patch
c23d34527a2ec68015ad78cd90365e4d80bce842ce01eeaa8cd2246021a55693  xsa380/xsa380-4.13-1.patch
bd40ce749d02f343c79325488ac1348e1c9e88e698bbad351bdb0a0d3995f3e0  xsa380/xsa380-4.13-2.patch
9b06085f9a4b93c465563cd76fdc682ddb9dba968c214259425b234e7053a809  xsa380/xsa380-4.14-1.patch
bf6b53880abd53b56226080d1a32839c7c8c459867104697cd76eeafc2ea382a  xsa380/xsa380-4.14-2.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.  HOWEVER, care has to be taken to avoid restricting
guests too much, as them suddenly being unable to map grants they used
to be able to map may lead to re-discovery of the issue.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.

(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmEvSDUMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZfboH/jtTLKbkb/K4SPliIDSRym1+wx17Ho30F9IRfd7E
ZdUBHfFLTEbZ/GvU+UkU914XeK49fCHZGylu2dcIRWgPmXFlqOtydFJny9a8sCjx
7/dLR1WXvhJ4eG8Hsma13uRzZuaF4JdXDp1M/QOr6aBHNTLBgMefbQNTAbFO0kzP
2xK3arGefi/eNa3GOEghrMlt2U/5r1h7PfLXBl69BETomOCOo5gyn6aQwqH/xKSY
W2cmqN0hYLyQSA+jx6QuTknsvSLS6NWWPEk/xfs31Op0E/P3tga0u6hCbRvWzOmE
AdISyyP8ogIBU4ekMn0H4yQoWKVgYctk3XAawBmogv+VJXI=
=7wyB
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa380.meta"
Content-Disposition: attachment; filename="xsa380.meta"
Content-Transfer-Encoding: base64

ewogICJYU0EiOiAzODAsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg
Im1hc3RlciIsCiAgICAiNC4xNSIsCiAgICAiNC4xNCIsCiAgICAiNC4xMyIs
CiAgICAiNC4xMiIsCiAgICAiNC4xMSIKICBdLAogICJUcmVlcyI6IFsKICAg
ICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6IHsKICAgICI0LjExIjogewogICAg
ICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0
YWJsZVJlZiI6ICJlZjMyYzdhZmEyNzMxYjc1ODIyNmQ2ZTEwYTFlNDg5YjFh
MTVmYzQxIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICAz
NzgsCiAgICAgICAgICAgIDM3OQogICAgICAgICAgXSwKICAgICAgICAgICJQ
YXRjaGVzIjogWwogICAgICAgICAgICAieHNhMzgwL3hzYTM4MC00LjExLT8u
cGF0Y2giCiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9LAog
ICAgIjQuMTIiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4i
OiB7CiAgICAgICAgICAiU3RhYmxlUmVmIjogImVhMjBlZWU5N2U5ZTA4NjEx
MjdhODA3MGNjN2I5YWUzNTU3YjA5ZmIiLAogICAgICAgICAgIlByZXJlcXMi
OiBbCiAgICAgICAgICAgIDM3OCwKICAgICAgICAgICAgMzc5CiAgICAgICAg
ICBdLAogICAgICAgICAgIlBhdGNoZXMiOiBbCiAgICAgICAgICAgICJ4c2Ez
ODAveHNhMzgwLTQuMTItPy5wYXRjaCIKICAgICAgICAgIF0KICAgICAgICB9
CiAgICAgIH0KICAgIH0sCiAgICAiNC4xMyI6IHsKICAgICAgIlJlY2lwZXMi
OiB7CiAgICAgICAgInhlbiI6IHsKICAgICAgICAgICJTdGFibGVSZWYiOiAi
MzJkNTgwOTAyYjk1OTAwMGQ3OWQ1MWRmZjAzYTM1NjA2NTNjNGZjYiIsCiAg
ICAgICAgICAiUHJlcmVxcyI6IFsKICAgICAgICAgICAgMzc4LAogICAgICAg
ICAgICAzNzkKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsK
ICAgICAgICAgICAgInhzYTM4MC94c2EzODAtNC4xMy0/LnBhdGNoIgogICAg
ICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICI0LjE0Ijog
ewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAg
ICAgIlN0YWJsZVJlZiI6ICI0OTI5OWM0ODEzYjc4NDdkMjlkZjA3YmY3OTBm
NTQ4OTA2MGYyYTljIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAg
ICAgICAzNzgsCiAgICAgICAgICAgIDM3OQogICAgICAgICAgXSwKICAgICAg
ICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhMzgwL3hzYTM4MC00
LjE0LT8ucGF0Y2giCiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAg
ICB9LAogICAgIjQuMTUiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAg
ICJ4ZW4iOiB7CiAgICAgICAgICAiU3RhYmxlUmVmIjogImRiYTc3NDg5NmY3
ZGQ3NDc3M2MxNGQ1Mzc2NDNiN2Q3NDc3ZmVmY2QiLAogICAgICAgICAgIlBy
ZXJlcXMiOiBbCiAgICAgICAgICAgIDM3OCwKICAgICAgICAgICAgMzc5CiAg
ICAgICAgICBdLAogICAgICAgICAgIlBhdGNoZXMiOiBbCiAgICAgICAgICAg
ICJ4c2EzODAveHNhMzgwLT8ucGF0Y2giCiAgICAgICAgICBdCiAgICAgICAg
fQogICAgICB9CiAgICB9LAogICAgIm1hc3RlciI6IHsKICAgICAgIlJlY2lw
ZXMiOiB7CiAgICAgICAgInhlbiI6IHsKICAgICAgICAgICJTdGFibGVSZWYi
OiAiMjVkYTk0NTVmMWJiOGE2ZDMzMDM5NTc1YTdiMjhiZGZjNGUzZmNmZSIs
CiAgICAgICAgICAiUHJlcmVxcyI6IFsKICAgICAgICAgICAgMzc4LAogICAg
ICAgICAgICAzNzkKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0Y2hlcyI6
IFsKICAgICAgICAgICAgInhzYTM4MC94c2EzODAtPy5wYXRjaCIKICAgICAg
ICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0=

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-1.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGFkZCBwcmVlbXB0aW9uIGNoZWNrIHRvIGdudHRhYl9yZWxl
YXNlX21hcHBpbmdzKCkKCkEgZ3Vlc3QgbWF5IGRpZSB3aXRoIG1hbnkgZ3Jh
bnQgbWFwcGluZ3Mgc3RpbGwgaW4gcGxhY2UsIG9yIHNpbXBseSB3aXRoCmEg
bGFyZ2UgbWFwdHJhY2sgdGFibGUuIEl0ZXJhdGluZyB0aHJvdWdoIHRoaXMg
bWF5IHRha2UgbW9yZSB0aW1lIHRoYW4KaXMgcmVhc29uYWJsZSB3aXRob3V0
IGludGVybWVkaWF0ZSBwcmVlbXB0aW9uICh0byBydW4gc29mdGlycXMgYW5k
CnBlcmhhcHMgdGhlIHNjaGVkdWxlcikuCgpNb3ZlIHRoZSBpbnZvY2F0aW9u
IG9mIHRoZSBmdW5jdGlvbiB0byB0aGUgc2VjdGlvbiB3aGVyZSBvdGhlcgpy
ZXN0YXJ0YWJsZSBmdW5jdGlvbnMgZ2V0IGludm9rZWQsIGFuZCBoYXZlIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgY2hlY2sKZm9yIHByZWVtcHRpb24gZXZlcnkg
b25jZSBpbiBhIHdoaWxlLiBIYXZlIGl0IGl0ZXJhdGUgdGhlIHRhYmxlCmJh
Y2t3YXJkcywgc3VjaCB0aGF0IGRlY3JlYXNpbmcgdGhlIG1hcHRyYWNrIGxp
bWl0IGlzIGFsbCBpdCB0YWtlcyB0bwpjb252ZXkgcmVzdGFydCBpbmZvcm1h
dGlvbi4KCkluIGRvbWFpbl90ZWFyZG93bigpIGludHJvZHVjZSBQUk9HX25v
bmUgc3VjaCB0aGF0IGluc2VydGluZyBhdCB0aGUKZnJvbnQgd2lsbCBiZSBl
YXNpZXIgZ29pbmcgZm9yd2FyZC4KClRoaXMgaXMgcGFydCBvZiBDVkUtMjAy
MS0yODY5OCAvIFhTQS0zODAuCgpSZXBvcnRlZC1ieTogQW5kcmV3IENvb3Bl
ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
SnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KLS0tCldoaWxlIEkg
Y29uc2lkZXIgcmVtb3ZhbCBvZiB0aGUgZnJlZWluZyBvZiB0LT5tYXB0cmFj
a1tpXSBmcm9tCmdyYW50X3RhYmxlX2Rlc3Ryb3koKSBhbiBpbnRlZ3JhbCBw
YXJ0IG9mIHRoaXMgY2hhbmdlLCBhbHNvIGZyZWVpbmcKdC0+bWFwdHJhY2sg
cmlnaHQgaW4gZ250dGFiX3JlbGVhc2VfbWFwcGluZ3MoKSB3b3VsZCBzZWVt
IGxpa2UgYW4KdW5yZWxhdGVkIGNoYW5nZSB0byBtZSwgc28gSSdtIG5vdCBt
b3ZpbmcgdGhhdCBvbmUgZm9yIG5vdy4gSWYgb3RoZXJzCnRoaW5rIGl0IHdv
dWxkIGJldHRlciBiZSBtb3ZlZCwgSSdkIGJlIGhhcHB5IHRvIGRvIHNvLgoK
V2hpbGUgaW4gcHJpbmNpcGxlIGl0IHdvdWxkIGJlIG5pY2UgdG8gYWxzbyBl
bGltaW5hdGUgdGhlIG90aGVyIGxvb3BzCmZyb20gZ3JhbnRfdGFibGVfZGVz
dHJveSgpICh3aGljaCBjYW4gYWxsIHRha2UgbG9uZyBhcyB3ZWxsIHByb3Zp
ZGVkIGEKbGFyZ2UgZW5vdWdoIG1heF9ncmFudF9mcmFtZXMpLCAtPm1hcHRy
YWNrW10gcmVhbGx5IGlzIHNwZWNpYWwgaW4gdGhhdAppdCBvbmx5IGdldHMg
YWNjZXNzZWQgd2hlbiBwcm9jZXNzaW5nIHJlcXVlc3RzIGJ5IHRoZSBkb21h
aW4gaXRzZWxmLiBUaGUKb3RoZXIgYXJyYXlzIG1heSBhbGwgY29udGludWUg
dG8gYmUgYWNjZXNzZWQgYXMgcmVtb3RlIGRvbWFpbnMgZHJvcCB1c2VzCm9m
IGdyYW50cyBieSB0aGUgZHlpbmcgZG9tYWluLgotLS0KdjM6IEFkZCBjb21t
ZW50Lgp2MjogTW92ZSBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncygpIGludm9j
YXRpb24gaW50byBkb21haW5fdGVhcmRvd24oKS4KICAgIERvbid0IGNyYXNo
IHdoZW4gY2xlYW5pbmcgdXAgZG9tYWluIHdpdGhvdXQgbWFwdHJhY2sgdGFi
bGUuIEV4dGVuZAogICAgY29tbWVudCBuZXh0IHRvIG1hcHRyYWNrX2xpbWl0
LgoKLS0tIGEveGVuL2NvbW1vbi9kb21haW4uYworKysgYi94ZW4vY29tbW9u
L2RvbWFpbi5jCkBAIC00MTIsMTEgKzQxMiwxOCBAQCBzdGF0aWMgaW50IGRv
bWFpbl90ZWFyZG93bihzdHJ1Y3QgZG9tYWluCiAgICAgICAgIHYgPSBkLT50
ZWFyZG93bi52Y3B1CiAKICAgICAgICAgZW51bSB7Ci0gICAgICAgICAgICBQ
Uk9HX3ZjcHVfdGVhcmRvd24gPSAxLAorICAgICAgICAgICAgUFJPR19ub25l
LAorICAgICAgICAgICAgUFJPR19nbnR0YWJfbWFwcGluZ3MsCisgICAgICAg
ICAgICBQUk9HX3ZjcHVfdGVhcmRvd24sCiAgICAgICAgICAgICBQUk9HX2Rv
bmUsCiAgICAgICAgIH07CiAKLSAgICBjYXNlIDA6CisgICAgY2FzZSBQUk9H
X25vbmU6CisgICAgICAgIHJjID0gZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Mo
ZCk7CisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgcmV0dXJuIHJj
OworCisgICAgUFJPR1JFU1MoZ250dGFiX21hcHBpbmdzKToKICAgICAgICAg
Zm9yX2VhY2hfdmNwdSAoIGQsIHYgKQogICAgICAgICB7CiAgICAgICAgICAg
ICBQUk9HUkVTU19WQ1BVKHRlYXJkb3duKTsKQEAgLTkwOCw3ICs5MTUsNiBA
QCBpbnQgZG9tYWluX2tpbGwoc3RydWN0IGRvbWFpbiAqZCkKICAgICAgICAg
ICAgIHJldHVybiBkb21haW5fa2lsbChkKTsKICAgICAgICAgZC0+aXNfZHlp
bmcgPSBET01EWUlOR19keWluZzsKICAgICAgICAgYXJnb19kZXN0cm95KGQp
OwotICAgICAgICBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhkKTsKICAgICAg
ICAgdm51bWFfZGVzdHJveShkLT52bnVtYSk7CiAgICAgICAgIGRvbWFpbl9z
ZXRfb3V0c3RhbmRpbmdfcGFnZXMoZCwgMCk7CiAgICAgICAgIC8qIGZhbGx0
aHJvdWdoICovCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRfdGFibGUuYworKysg
Yi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTY0LDcgKzY0LDEzIEBA
IHN0cnVjdCBncmFudF90YWJsZSB7CiAgICAgdW5zaWduZWQgaW50ICAgICAg
ICAgIG5yX2dyYW50X2ZyYW1lczsKICAgICAvKiBOdW1iZXIgb2YgZ3JhbnQg
c3RhdHVzIGZyYW1lcyBzaGFyZWQgd2l0aCBndWVzdCAoZm9yIHZlcnNpb24g
MikgKi8KICAgICB1bnNpZ25lZCBpbnQgICAgICAgICAgbnJfc3RhdHVzX2Zy
YW1lczsKLSAgICAvKiBOdW1iZXIgb2YgYXZhaWxhYmxlIG1hcHRyYWNrIGVu
dHJpZXMuICovCisgICAgLyoKKyAgICAgKiBOdW1iZXIgb2YgYXZhaWxhYmxl
IG1hcHRyYWNrIGVudHJpZXMuICBGb3IgY2xlYW51cCBwdXJwb3NlcyBpdCBp
cworICAgICAqIGltcG9ydGFudCB0byByZWFsaXplIHRoYXQgdGhpcyBmaWVs
ZCBhbmQgQG1hcHRyYWNrIGZ1cnRoZXIgZG93biB3aWxsCisgICAgICogb25s
eSBldmVyIGJlIGFjY2Vzc2VkIGJ5IHRoZSBsb2NhbCBkb21haW4uICBUaHVz
IGl0IGlzIG9rYXkgdG8gY2xlYW4KKyAgICAgKiB1cCBlYXJseSwgYW5kIHRv
IHNocmluayB0aGUgbGltaXQgZm9yIHRoZSBwdXJwb3NlIG9mIHRyYWNraW5n
IGNsZWFudXAKKyAgICAgKiBwcm9ncmVzcy4KKyAgICAgKi8KICAgICB1bnNp
Z25lZCBpbnQgICAgICAgICAgbWFwdHJhY2tfbGltaXQ7CiAgICAgLyogU2hh
cmVkIGdyYW50IHRhYmxlIChzZWUgaW5jbHVkZS9wdWJsaWMvZ3JhbnRfdGFi
bGUuaCkuICovCiAgICAgdW5pb24gewpAQCAtMzY3OSw5ICszNjg1LDcgQEAg
ZG9fZ3JhbnRfdGFibGVfb3AoCiAjaW5jbHVkZSAiY29tcGF0L2dyYW50X3Rh
YmxlLmMiCiAjZW5kaWYKIAotdm9pZAotZ250dGFiX3JlbGVhc2VfbWFwcGlu
Z3MoCi0gICAgc3RydWN0IGRvbWFpbiAqZCkKK2ludCBnbnR0YWJfcmVsZWFz
ZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBn
cmFudF90YWJsZSAgICpndCA9IGQtPmdyYW50X3RhYmxlLCAqcmd0OwogICAg
IHN0cnVjdCBncmFudF9tYXBwaW5nICptYXA7CkBAIC0zNjk1LDggKzM2OTks
MzIgQEAgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3MoCiAKICAgICBCVUdfT04o
IWQtPmlzX2R5aW5nKTsKIAotICAgIGZvciAoIGhhbmRsZSA9IDA7IGhhbmRs
ZSA8IGd0LT5tYXB0cmFja19saW1pdDsgaGFuZGxlKysgKQorICAgIGlmICgg
IWd0IHx8ICFndC0+bWFwdHJhY2sgKQorICAgICAgICByZXR1cm4gMDsKKwor
ICAgIGZvciAoIGhhbmRsZSA9IGd0LT5tYXB0cmFja19saW1pdDsgaGFuZGxl
OyApCiAgICAgeworICAgICAgICAvKgorICAgICAgICAgKiBEZWFsIHdpdGgg
ZnVsbCBwYWdlcyBzdWNoIHRoYXQgdGhlaXIgZnJlZWluZyAoaW4gdGhlIGJv
ZHkgb2YgdGhlCisgICAgICAgICAqIGlmKCkpIHJlbWFpbnMgc2ltcGxlLgor
ICAgICAgICAgKi8KKyAgICAgICAgaWYgKCBoYW5kbGUgPCBndC0+bWFwdHJh
Y2tfbGltaXQgJiYgIShoYW5kbGUgJSBNQVBUUkFDS19QRVJfUEFHRSkgKQor
ICAgICAgICB7CisgICAgICAgICAgICAvKgorICAgICAgICAgICAgICogQ2hh
bmdpbmcgbWFwdHJhY2tfbGltaXQgYWx0ZXJzIG5yX21hcHRyYWNrX2ZyYW1l
cygpJ2VzIHJldHVybgorICAgICAgICAgICAgICogdmFsdWUuIEZyZWUgdGhl
IHRoZW4gZXhjZXNzIHRyYWlsaW5nIHBhZ2UgcmlnaHQgaGVyZSwgcmF0aGVy
CisgICAgICAgICAgICAgKiB0aGFuIGxlYXZpbmcgaXQgdG8gZ3JhbnRfdGFi
bGVfZGVzdHJveSgpIChhbmQgaW4gdHVybiByZXF1aXJpbmcKKyAgICAgICAg
ICAgICAqIHRvIGxlYXZlIGd0LT5tYXB0cmFja19saW1pdCB1bmFsdGVyZWQp
LgorICAgICAgICAgICAgICovCisgICAgICAgICAgICBndC0+bWFwdHJhY2tf
bGltaXQgPSBoYW5kbGU7CisgICAgICAgICAgICBGUkVFX1hFTkhFQVBfUEFH
RShndC0+bWFwdHJhY2tbbnJfbWFwdHJhY2tfZnJhbWVzKGd0KV0pOworCisg
ICAgICAgICAgICBpZiAoIGh5cGVyY2FsbF9wcmVlbXB0X2NoZWNrKCkgKQor
ICAgICAgICAgICAgICAgIHJldHVybiAtRVJFU1RBUlQ7CisgICAgICAgIH0K
KworICAgICAgICAtLWhhbmRsZTsKKwogICAgICAgICBtYXAgPSAmbWFwdHJh
Y2tfZW50cnkoZ3QsIGhhbmRsZSk7CiAgICAgICAgIGlmICggIShtYXAtPmZs
YWdzICYgKEdOVE1BUF9kZXZpY2VfbWFwfEdOVE1BUF9ob3N0X21hcCkpICkK
ICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMzc4MCw2ICszODA4LDExIEBA
IGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKAogCiAgICAgICAgIG1hcC0+Zmxh
Z3MgPSAwOwogICAgIH0KKworICAgIGd0LT5tYXB0cmFja19saW1pdCA9IDA7
CisgICAgRlJFRV9YRU5IRUFQX1BBR0UoZ3QtPm1hcHRyYWNrWzBdKTsKKwor
ICAgIHJldHVybiAwOwogfQogCiB2b2lkIGdyYW50X3RhYmxlX3dhcm5fYWN0
aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKQpAQCAtMzg0Myw4ICszODc2
LDcgQEAgZ3JhbnRfdGFibGVfZGVzdHJveSgKICAgICAgICAgZnJlZV94ZW5o
ZWFwX3BhZ2UodC0+c2hhcmVkX3Jhd1tpXSk7CiAgICAgeGZyZWUodC0+c2hh
cmVkX3Jhdyk7CiAKLSAgICBmb3IgKCBpID0gMDsgaSA8IG5yX21hcHRyYWNr
X2ZyYW1lcyh0KTsgaSsrICkKLSAgICAgICAgZnJlZV94ZW5oZWFwX3BhZ2Uo
dC0+bWFwdHJhY2tbaV0pOworICAgIEFTU0VSVCghdC0+bWFwdHJhY2tfbGlt
aXQpOwogICAgIHZmcmVlKHQtPm1hcHRyYWNrKTsKIAogICAgIGZvciAoIGkg
PSAwOyBpIDwgbnJfYWN0aXZlX2dyYW50X2ZyYW1lcyh0KTsgaSsrICkKLS0t
IGEveGVuL2luY2x1ZGUveGVuL2dyYW50X3RhYmxlLmgKKysrIGIveGVuL2lu
Y2x1ZGUveGVuL2dyYW50X3RhYmxlLmgKQEAgLTQ3LDkgKzQ3LDcgQEAgdm9p
ZCBncmFudF90YWJsZV9pbml0X3ZjcHUoc3RydWN0IHZjcHUgKgogdm9pZCBn
cmFudF90YWJsZV93YXJuX2FjdGl2ZV9ncmFudHMoc3RydWN0IGRvbWFpbiAq
ZCk7CiAKIC8qIERvbWFpbiBkZWF0aCByZWxlYXNlIG9mIGdyYW50ZWQgbWFw
cGluZ3Mgb2Ygb3RoZXIgZG9tYWlucycgbWVtb3J5LiAqLwotdm9pZAotZ250
dGFiX3JlbGVhc2VfbWFwcGluZ3MoCi0gICAgc3RydWN0IGRvbWFpbiAqZCk7
CitpbnQgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Moc3RydWN0IGRvbWFpbiAq
ZCk7CiAKIGludCBtZW1fc2hhcmluZ19ncmVmX3RvX2dmbihzdHJ1Y3QgZ3Jh
bnRfdGFibGUgKmd0LCBncmFudF9yZWZfdCByZWYsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZ2ZuX3QgKmdmbiwgdWludDE2X3QgKnN0YXR1cyk7
CkBAIC04MCw3ICs3OCw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBncmFudF90
YWJsZV9pbml0X3ZjcHUKIAogc3RhdGljIGlubGluZSB2b2lkIGdyYW50X3Rh
YmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKSB7fQog
Ci1zdGF0aWMgaW5saW5lIHZvaWQgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Mo
c3RydWN0IGRvbWFpbiAqZCkge30KK3N0YXRpYyBpbmxpbmUgaW50IGdudHRh
Yl9yZWxlYXNlX21hcHBpbmdzKHN0cnVjdCBkb21haW4gKmQpIHsgcmV0dXJu
IDA7IH0KIAogc3RhdGljIGlubGluZSBpbnQgbWVtX3NoYXJpbmdfZ3JlZl90
b19nZm4oc3RydWN0IGdyYW50X3RhYmxlICpndCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYW50X3JlZl90IHJlZiwK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-2.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IHJlcGxhY2UgbWFwa2luZCgpCgptYXBraW5kKCkgZG9lc24n
dCBzY2FsZSB2ZXJ5IHdlbGwgd2l0aCBsYXJnZXIgbWFwdHJhY2sgZW50cnkg
Y291bnRzLAp1c2luZyBhIGJydXRlIGZvcmNlIGxpbmVhciBzZWFyY2ggdGhy
b3VnaCBhbGwgZW50cmllcywgd2l0aCB0aGUgb25seQpvcHRpb24gb2YgYW4g
ZWFybHkgbG9vcCBleGl0IGlmIGEgbWF0Y2hpbmcgd3JpdGFibGUgZW50cnkg
d2FzIGZvdW5kLgpJbnRyb2R1Y2UgYSByYWRpeCB0cmVlIGFsb25nc2lkZSB0
aGUgbWFpbiBtYXB0cmFjayB0YWJsZSwgdGh1cwphbGxvd2luZyBtdWNoIGZh
c3RlciBNRk4tYmFzZWQgbG9va3VwLiBUbyBhdm9pZCB0aGUgbmVlZCB0byBh
Y3R1YWxseQphbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGluZGl2aWR1YWwgbm9k
ZXMsIGVuY29kZSB0aGUgdHdvIGNvdW50ZXJzIGluIHRoZQpub2RlIHBvaW50
ZXJzIHRoZW1zZWx2ZXMsIHRodXMgbGltaXRpbmcgdGhlIG51bWJlciBvZiBw
ZXJtaXR0ZWQKc2ltdWx0YW5lb3VzIHIvbyBhbmQgci93IG1hcHBpbmdzIG9m
IHRoZSBzYW1lIE1GTiB0byAywrPCuS0xICg2NC1iaXQpIC8KMsK54oG1LTEg
KDMyLWJpdCkgZWFjaC4KClRvIGF2b2lkIGVuZm9yY2luZyBhbiB1bm5lY2Vz
c2FyaWx5IGxvdyBib3VuZCBvbiB0aGUgbnVtYmVyIG9mCnNpbXVsdGFuZW91
cyBtYXBwaW5ncyBvZiBhIHNpbmdsZSBNRk4sIGludHJvZHVjZQpyYWRpeF90
cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfSBwYXJhbGxlbGluZwpy
YWRpeF90cmVlX3tpbnRfdG9fcHRyLHB0cl90b19pbnR9LgoKQXMgYSBjb25z
ZXF1ZW5jZSBsb2NraW5nIGNoYW5nZXMgYXJlIGFsc28gYXBwbGljYWJsZTog
V2l0aCB0aGVyZSBubwpsb25nZXIgYmVpbmcgYW55IGluc3BlY3Rpb24gb2Yg
dGhlIHJlbW90ZSBkb21haW4ncyBhY3RpdmUgZW50cmllcywKdGhlcmUncyBh
bHNvIG5vIG5lZWQgYW55bW9yZSB0byBob2xkIHRoZSByZW1vdGUgZG9tYWlu
J3MgZ3JhbnQgdGFibGUKbG9jay4gQW5kIHNpbmNlIHdlJ3JlIG5vIGxvbmdl
ciBpdGVyYXRpbmcgb3ZlciB0aGUgbG9jYWwgZG9tYWluJ3MgbWFwCnRyYWNr
IHRhYmxlLCB0aGUgbG9jayBpbiBtYXBfZ3JhbnRfcmVmKCkgY2FuIGFsc28g
YmUgZHJvcHBlZCBiZWZvcmUgdGhlCm5ldyBtYXB0cmFjayBlbnRyeSBhY3R1
YWxseSBnZXRzIHBvcHVsYXRlZC4KCkFzIGEgbmljZSBzaWRlIGVmZmVjdCB0
aGlzIGFsc28gcmVkdWNlcyB0aGUgbnVtYmVyIG9mIElPTU1VIG9wZXJhdGlv
bnMKaW4gdW5tYXBfY29tbW9uKCk6IFByZXZpb3VzbHkgd2Ugd291bGQgaGF2
ZSAiZXN0YWJsaXNoZWQiIGEgcmVhZGFibGUKbWFwcGluZyB3aGVuZXZlciB3
ZSBkaWRuJ3QgZmluZCBhIHdyaXRhYmxlIGVudHJ5IGFueW1vcmUgKHlldCwg
b2YKY291cnNlLCBhdCBsZWFzdCBvbmUgcmVhZGFibGUgb25lKS4gQnV0IHdl
IG9ubHkgbmVlZCB0byBkbyB0aGlzIGlmIHdlCmFjdHVhbGx5IGRyb3BwZWQg
dGhlIGxhc3Qgd3JpdGFibGUgZW50cnksIG5vdCBpZiB0aGVyZSB3ZXJlIG5v
bmUgYWxyZWFkeQpiZWZvcmUuCgpUaGlzIGlzIHBhcnQgb2YgQ1ZFLTIwMjEt
Mjg2OTggLyBYU0EtMzgwLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2gg
PGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxs
IDxqZ3JhbGxAYW1hem9uLmNvbT4KLS0tCkkgaG9wZSB0aGF0IGxpbWl0aW5n
IHRoZSBtYXAgY291bnQgdG8gMzJrIG9uIEFybTMyIGlzIGdvb2QgZW5vdWdo
LiBJCmFsc28gaG9wZSBpdCBpcyBvdXQgb2YgcXVlc3Rpb24gdGhhdCAyRyBv
ZiBtYXBwaW5ncyBhcmUgZW5vdWdoIG9uIDY0LWJpdAphcmNoaXRlY3R1cmVz
LgoKSSdtIHVzaW5nIHRoZSBncmFudCB0YWJsZSBsb2NrIGZvciBzeW5jaHJv
bml6YXRpb24gdG8gbGltaXQgZGlmZmVyZW5jZXMKaW4gYmVoYXZpb3IgdG8g
cHJpb3IgY29kZS4gSSB0aGluayBpbiBwcmluY2lwbGUgdGhlIG1hcHRyYWNr
IGxvY2sgY291bGQKYmUgdXNlZCBlcXVhbGx5IHdlbGwuCgpTaG91bGRuJ3Qg
SU9NTVUgaW5zZXJ0aW9ucyBiZSBsaW1pdGVkIGFueXdheSB0byBHTlRNQVBf
ZGV2aWNlX21hcApyZXF1ZXN0cz8gVGhpcyB3b3VsZCBmdXJ0aGVyIHNhdmUg
b24gdGhlIG51bWJlciBvZiByYWRpeCB0cmVlIG5vZGVzIGluCm5lZWQgb2Yg
bWFpbnRhaW5pbmcuCgpJJ20gaGVzaXRhbnQgdG8gaW50cm9kdWNlIEdOVFNU
XyogaW4gYSBzZWN1cml0eSBwYXRjaCwgYnV0IGJlaW5nIGFibGUgdG8KdGVs
bCBhbGxvY2F0aW9uIGZhaWx1cmUgb3IgY291bnRlciBvdmVyZmxvdyBmcm9t
IG90aGVyIGVycm9ycyBtaWdodCBiZQp3b3J0aHdoaWxlLgoKSSBkb24ndCB0
aGluayBhZGRpbmcgYW55dGhpbmcgdG8gZ250dGFiX3VzYWdlX3ByaW50KCkg
aXMgdXNlZnVsOgpyYWRpeF90cmVlX2dhbmdfbG9va3VwKCkgcmVxdWlyZXMg
bm9kZXMgdG8gcmVjb3JkIHRoZWlyIG93biBpbmRleGVzIGludG8KdGhlIHRy
ZWUsIHdoaWNoIHdlIGRvbid0IGRvIHRvIHNhdmUgc3BhY2UuIFlldCB3aXRo
b3V0IGluZGV4ZXMgcHJpbnRpbmcKbm9kZSBjb250ZW50cyBpc24ndCB2ZXJ5
IHVzZWZ1bC4gUGx1cyB0aGVyZSdzIGFsc28gbm8gcHJpbnRpbmcgb2YgdGhl
Cm1haW4gbWFwdHJhY2sgdGFibGUgY29udGVudHMuCi0tLQp2MzogQ2hlY2sg
Zm9yIHJhZGl4X3RyZWVfbG9va3VwX3Nsb3QoKSByZXR1cm5pbmcgTlVMTC4g
Q29udmVydCAtRUVYSVNUCiAgICB0byAtRUJVU1kuIEFkZCBjb21tZW50cy4g
UmUtYmFzZSBvdmVyIGNvbW1lbnQgYWRkaXRpb24gaW4gcGF0Y2ggMS4KdjI6
IE5ldy4KCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRfdGFibGUuYworKysgYi94
ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTM3LDYgKzM3LDcgQEAKICNp
bmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNpbmNsdWRlIDx4ZW4vcGFnaW5nLmg+
CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4KKyNpbmNsdWRlIDx4ZW4v
cmFkaXgtdHJlZS5oPgogI2luY2x1ZGUgPHhlbi92bWFwLmg+CiAjaW5jbHVk
ZSA8eGVuL25vc3BlYy5oPgogI2luY2x1ZGUgPHhzbS94c20uaD4KQEAgLTgy
LDggKzgzLDEzIEBAIHN0cnVjdCBncmFudF90YWJsZSB7CiAgICAgZ3JhbnRf
c3RhdHVzX3QgICAgICAgKipzdGF0dXM7CiAgICAgLyogQWN0aXZlIGdyYW50
IHRhYmxlLiAqLwogICAgIHN0cnVjdCBhY3RpdmVfZ3JhbnRfZW50cnkgKiph
Y3RpdmU7Ci0gICAgLyogTWFwcGluZyB0cmFja2luZyB0YWJsZSBwZXIgdmNw
dS4gKi8KKyAgICAvKiBIYW5kbGUtaW5kZXhlZCB0cmFja2luZyB0YWJsZSBv
ZiBtYXBwaW5ncy4gKi8KICAgICBzdHJ1Y3QgZ3JhbnRfbWFwcGluZyAqKm1h
cHRyYWNrOworICAgIC8qCisgICAgICogTUZOLWluZGV4ZWQgdHJhY2tpbmcg
dHJlZSBvZiBtYXBwaW5ncywgaWYgbmVlZGVkLiAgTm90ZSB0aGF0IHRoaXMg
aXMKKyAgICAgKiBwcm90ZWN0ZWQgYnkgQGxvY2ssIG5vdCBAbWFwdHJhY2tf
bG9jay4KKyAgICAgKi8KKyAgICBzdHJ1Y3QgcmFkaXhfdHJlZV9yb290IG1h
cHRyYWNrX3RyZWU7CiAKICAgICAvKiBEb21haW4gdG8gd2hpY2ggdGhpcyBz
dHJ1Y3QgZ3JhbnRfdGFibGUgYmVsb25ncy4gKi8KICAgICBjb25zdCBzdHJ1
Y3QgZG9tYWluICpkb21haW47CkBAIC01MTYsMzQgKzUyMiw2IEBAIHN0YXRp
YyBpbnQgZ2V0X3BhZ2VkX2ZyYW1lKHVuc2lnbmVkIGxvbmcKICAgICByZXR1
cm4gR05UU1Rfb2theTsKIH0KIAotc3RhdGljIGlubGluZSB2b2lkCi1kb3Vi
bGVfZ3RfbG9jayhzdHJ1Y3QgZ3JhbnRfdGFibGUgKmxndCwgc3RydWN0IGdy
YW50X3RhYmxlICpyZ3QpCi17Ci0gICAgLyoKLSAgICAgKiBTZWUgbWFwa2lu
ZCgpIGZvciB3aHkgdGhlIHdyaXRlIGxvY2sgaXMgYWxzbyByZXF1aXJlZCBm
b3IgdGhlCi0gICAgICogcmVtb3RlIGRvbWFpbi4KLSAgICAgKi8KLSAgICBp
ZiAoIGxndCA8IHJndCApCi0gICAgewotICAgICAgICBncmFudF93cml0ZV9s
b2NrKGxndCk7Ci0gICAgICAgIGdyYW50X3dyaXRlX2xvY2socmd0KTsKLSAg
ICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAgICAgaWYgKCBsZ3QgIT0gcmd0
ICkKLSAgICAgICAgICAgIGdyYW50X3dyaXRlX2xvY2socmd0KTsKLSAgICAg
ICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOwotICAgIH0KLX0KLQotc3RhdGlj
IGlubGluZSB2b2lkCi1kb3VibGVfZ3RfdW5sb2NrKHN0cnVjdCBncmFudF90
YWJsZSAqbGd0LCBzdHJ1Y3QgZ3JhbnRfdGFibGUgKnJndCkKLXsKLSAgICBn
cmFudF93cml0ZV91bmxvY2sobGd0KTsKLSAgICBpZiAoIGxndCAhPSByZ3Qg
KQotICAgICAgICBncmFudF93cml0ZV91bmxvY2socmd0KTsKLX0KLQogI2Rl
ZmluZSBJTlZBTElEX01BUFRSQUNLX0hBTkRMRSBVSU5UX01BWAogCiBzdGF0
aWMgaW5saW5lIGdyYW50X2hhbmRsZV90CkBAIC05NzAsNDEgKzk0OCwxNyBA
QCBzdGF0aWMgc3RydWN0IGFjdGl2ZV9ncmFudF9lbnRyeSAqZ3JhbnRfCiAg
ICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiB9CiAKLSNkZWZpbmUgTUFQ
S0lORF9SRUFEIDEKLSNkZWZpbmUgTUFQS0lORF9XUklURSAyCi1zdGF0aWMg
dW5zaWduZWQgaW50IG1hcGtpbmQoCi0gICAgc3RydWN0IGdyYW50X3RhYmxl
ICpsZ3QsIGNvbnN0IHN0cnVjdCBkb21haW4gKnJkLCBtZm5fdCBtZm4pCi17
Ci0gICAgc3RydWN0IGdyYW50X21hcHBpbmcgKm1hcDsKLSAgICBncmFudF9o
YW5kbGVfdCBoYW5kbGUsIGxpbWl0ID0gbGd0LT5tYXB0cmFja19saW1pdDsK
LSAgICB1bnNpZ25lZCBpbnQga2luZCA9IDA7Ci0KLSAgICAvKgotICAgICAq
IE11c3QgaGF2ZSB0aGUgbG9jYWwgZG9tYWluJ3MgZ3JhbnQgdGFibGUgd3Jp
dGUgbG9jayB3aGVuCi0gICAgICogaXRlcmF0aW5nIG92ZXIgaXRzIG1hcHRy
YWNrIGVudHJpZXMuCi0gICAgICovCi0gICAgQVNTRVJUKHBlcmNwdV9yd19p
c193cml0ZV9sb2NrZWQoJmxndC0+bG9jaykpOwotICAgIC8qCi0gICAgICog
TXVzdCBoYXZlIHRoZSByZW1vdGUgZG9tYWluJ3MgZ3JhbnQgdGFibGUgd3Jp
dGUgbG9jayB3aGlsZQotICAgICAqIGNvdW50aW5nIGl0cyBhY3RpdmUgZW50
cmllcy4KLSAgICAgKi8KLSAgICBBU1NFUlQocGVyY3B1X3J3X2lzX3dyaXRl
X2xvY2tlZCgmcmQtPmdyYW50X3RhYmxlLT5sb2NrKSk7Ci0KLSAgICBzbXBf
cm1iKCk7Ci0KLSAgICBmb3IgKCBoYW5kbGUgPSAwOyAhKGtpbmQgJiBNQVBL
SU5EX1dSSVRFKSAmJiBoYW5kbGUgPCBsaW1pdDsgaGFuZGxlKysgKQotICAg
IHsKLSAgICAgICAgbWFwID0gJm1hcHRyYWNrX2VudHJ5KGxndCwgaGFuZGxl
KTsKLSAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3MgJiAoR05UTUFQX2Rldmlj
ZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgfHwKLSAgICAgICAgICAgICBtYXAt
PmRvbWlkICE9IHJkLT5kb21haW5faWQgKQotICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgIGlmICggbWZuX2VxKF9hY3RpdmVfZW50cnkocmQtPmdy
YW50X3RhYmxlLCBtYXAtPnJlZikubWZuLCBtZm4pICkKLSAgICAgICAgICAg
IGtpbmQgfD0gbWFwLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSA/Ci0gICAg
ICAgICAgICAgICAgICAgIE1BUEtJTkRfUkVBRCA6IE1BUEtJTkRfV1JJVEU7
Ci0gICAgfQotCi0gICAgcmV0dXJuIGtpbmQ7Ci19Cit1bmlvbiBtYXB0cmFj
a19ub2RlIHsKKyAgICBzdHJ1Y3QgeworICAgICAgICAvKiBSYWRpeCB0cmVl
IHNsb3QgcG9pbnRlcnMgdXNlIHR3byBvZiB0aGUgYml0cy4gKi8KKyNpZmRl
ZiBfX0JJR19FTkRJQU5fQklURklFTEQKKyAgICAgICAgdW5zaWduZWQgbG9u
ZyAgICA6IDI7CisjZW5kaWYKKyAgICAgICAgdW5zaWduZWQgbG9uZyByZCA6
IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsKKyAgICAgICAgdW5zaWduZWQgbG9u
ZyB3ciA6IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsKKyAgICB9IGNudDsKKyAg
ICB1bnNpZ25lZCBsb25nIHJhdzsKK307CiAKIHN0YXRpYyB2b2lkCiBtYXBf
Z3JhbnRfcmVmKApAQCAtMTAyMyw3ICs5NzcsNiBAQCBtYXBfZ3JhbnRfcmVm
KAogICAgIHN0cnVjdCBncmFudF9tYXBwaW5nICptdDsKICAgICBncmFudF9l
bnRyeV9oZWFkZXJfdCAqc2hhaDsKICAgICB1aW50MTZfdCAqc3RhdHVzOwot
ICAgIGJvb2xfdCBuZWVkX2lvbW11OwogCiAgICAgbGQgPSBjdXJyZW50LT5k
b21haW47CiAKQEAgLTEyNDQsMzEgKzExOTcsNzUgQEAgbWFwX2dyYW50X3Jl
ZigKICAgICAgKiBhcyBtZW0tc2hhcmluZyBhbmQgSU9NTVUgdXNlIGFyZSBp
bmNvbXBhdGlibGUpLiBUaGUgZG9tX2lvIGNhc2Ugd291bGQKICAgICAgKiBu
ZWVkIGNoZWNraW5nIHNlcGFyYXRlbHkgaWYgd2UgY29tcGFyZWQgYWdhaW5z
dCBvd25lciBoZXJlLgogICAgICAqLwotICAgIG5lZWRfaW9tbXUgPSBsZCAh
PSByZCAmJiBnbnR0YWJfbmVlZF9pb21tdV9tYXBwaW5nKGxkKTsKLSAgICBp
ZiAoIG5lZWRfaW9tbXUgKQorICAgIGlmICggbGQgIT0gcmQgJiYgZ250dGFi
X25lZWRfaW9tbXVfbWFwcGluZyhsZCkgKQogICAgIHsKKyAgICAgICAgdW5p
b24gbWFwdHJhY2tfbm9kZSBub2RlID0geworICAgICAgICAgICAgLmNudC5y
ZCA9ICEhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSksCisgICAgICAg
ICAgICAuY250LndyID0gIShvcC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkp
LAorICAgICAgICB9OworICAgICAgICBpbnQgZXJyOworICAgICAgICB2b2lk
ICoqc2xvdCA9IE5VTEw7CiAgICAgICAgIHVuc2lnbmVkIGludCBraW5kOwog
Ci0gICAgICAgIGRvdWJsZV9ndF9sb2NrKGxndCwgcmd0KTsKKyAgICAgICAg
Z3JhbnRfd3JpdGVfbG9jayhsZ3QpOworCisgICAgICAgIGVyciA9IHJhZGl4
X3RyZWVfaW5zZXJ0KCZsZ3QtPm1hcHRyYWNrX3RyZWUsIG1mbl94KG1mbiks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVf
dWxvbmdfdG9fcHRyKG5vZGUucmF3KSk7CisgICAgICAgIGlmICggZXJyID09
IC1FRVhJU1QgKQorICAgICAgICB7CisgICAgICAgICAgICBzbG90ID0gcmFk
aXhfdHJlZV9sb29rdXBfc2xvdCgmbGd0LT5tYXB0cmFja190cmVlLCBtZm5f
eChtZm4pKTsKKyAgICAgICAgICAgIGlmICggbGlrZWx5KHNsb3QpICkKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBub2RlLnJhdyA9IHJhZGl4
X3RyZWVfcHRyX3RvX3Vsb25nKCpzbG90KTsKKyAgICAgICAgICAgICAgICBl
cnIgPSAtRUJVU1k7CisKKyAgICAgICAgICAgICAgICAvKiBVcGRhdGUgbm9k
ZSBvbmx5IHdoZW4gcmVmY291bnQgZG9lc24ndCBvdmVyZmxvdy4gKi8KKyAg
ICAgICAgICAgICAgICBpZiAoIG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25s
eSA/ICsrbm9kZS5jbnQucmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6ICsrbm9kZS5jbnQud3IgKQorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJl
ZV9yZXBsYWNlX3Nsb3Qoc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJlZV91bG9uZ190b19wdHIo
bm9kZS5yYXcpKTsKKyAgICAgICAgICAgICAgICAgICAgZXJyID0gMDsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7Cisg
ICAgICAgIH0KIAogICAgICAgICAvKgogICAgICAgICAgKiBXZSdyZSBub3Qg
dHJhbnNsYXRlZCwgc28gd2Uga25vdyB0aGF0IGRmbnMgYW5kIG1mbnMgYXJl
CiAgICAgICAgICAqIHRoZSBzYW1lIHRoaW5ncywgc28gdGhlIElPTU1VIGVu
dHJ5IGlzIGFsd2F5cyAxLXRvLTEuCiAgICAgICAgICAqLwotICAgICAgICBr
aW5kID0gbWFwa2luZChsZ3QsIHJkLCBtZm4pOwotICAgICAgICBpZiAoICEo
b3AtPmZsYWdzICYgR05UTUFQX3JlYWRvbmx5KSAmJgotICAgICAgICAgICAg
ICEoa2luZCAmIE1BUEtJTkRfV1JJVEUpICkKKyAgICAgICAgaWYgKCAhKG9w
LT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSkgJiYgbm9kZS5jbnQud3IgPT0g
MSApCiAgICAgICAgICAgICBraW5kID0gSU9NTVVGX3JlYWRhYmxlIHwgSU9N
TVVGX3dyaXRhYmxlOwotICAgICAgICBlbHNlIGlmICggIWtpbmQgKQorICAg
ICAgICBlbHNlIGlmICggKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSkg
JiYKKyAgICAgICAgICAgICAgICAgIG5vZGUuY250LnJkID09IDEgJiYgIW5v
ZGUuY250LndyICkKICAgICAgICAgICAgIGtpbmQgPSBJT01NVUZfcmVhZGFi
bGU7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGtpbmQgPSAwOwotICAg
ICAgICBpZiAoIGtpbmQgJiYgaW9tbXVfbGVnYWN5X21hcChsZCwgX2Rmbiht
Zm5feChtZm4pKSwgbWZuLCAxLCBraW5kKSApCisgICAgICAgIGlmICggZXJy
IHx8CisgICAgICAgICAgICAgKGtpbmQgJiYgaW9tbXVfbGVnYWN5X21hcChs
ZCwgX2RmbihtZm5feChtZm4pKSwgbWZuLCAxLCBraW5kKSkgKQogICAgICAg
ICB7Ci0gICAgICAgICAgICBkb3VibGVfZ3RfdW5sb2NrKGxndCwgcmd0KTsK
KyAgICAgICAgICAgIGlmICggIWVyciApCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgaWYgKCBzbG90ICkKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25s
eSA/IG5vZGUuY250LnJkLS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5jbnQud3ItLTsKKyAgICAg
ICAgICAgICAgICAgICAgcmFkaXhfdHJlZV9yZXBsYWNlX3Nsb3Qoc2xvdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmFkaXhfdHJlZV91bG9uZ190b19wdHIobm9kZS5yYXcpKTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICByYWRpeF90cmVlX2RlbGV0ZSgmbGd0LT5tYXB0cmFja190cmVl
LCBtZm5feChtZm4pKTsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgICAg
cmMgPSBHTlRTVF9nZW5lcmFsX2Vycm9yOwotICAgICAgICAgICAgZ290byB1
bmRvX291dDsKICAgICAgICAgfQorCisgICAgICAgIGdyYW50X3dyaXRlX3Vu
bG9jayhsZ3QpOworCisgICAgICAgIGlmICggcmMgIT0gR05UU1Rfb2theSAp
CisgICAgICAgICAgICBnb3RvIHVuZG9fb3V0OwogICAgIH0KIAogICAgIFRS
QUNFXzFEKFRSQ19NRU1fUEFHRV9HUkFOVF9NQVAsIG9wLT5kb20pOwpAQCAt
MTI3NiwxMCArMTI3Myw2IEBAIG1hcF9ncmFudF9yZWYoCiAgICAgLyoKICAg
ICAgKiBBbGwgbWFwdHJhY2sgZW50cnkgdXNlcnMgY2hlY2sgbXQtPmZsYWdz
IGZpcnN0IGJlZm9yZSB1c2luZyB0aGUKICAgICAgKiBvdGhlciBmaWVsZHMg
c28ganVzdCBlbnN1cmUgdGhlIGZsYWdzIGZpZWxkIGlzIHN0b3JlZCBsYXN0
LgotICAgICAqCi0gICAgICogSG93ZXZlciwgaWYgZ250dGFiX25lZWRfaW9t
bXVfbWFwcGluZygpIHRoZW4gdGhpcyB3b3VsZCByYWNlCi0gICAgICogd2l0
aCBhIGNvbmN1cnJlbnQgbWFwa2luZCgpIGNhbGwgKG9uIGFuIHVubWFwLCBm
b3IgZXhhbXBsZSkKLSAgICAgKiBhbmQgYSBsb2NrIGlzIHJlcXVpcmVkLgog
ICAgICAqLwogICAgIG10ID0gJm1hcHRyYWNrX2VudHJ5KGxndCwgaGFuZGxl
KTsKICAgICBtdC0+ZG9taWQgPSBvcC0+ZG9tOwpAQCAtMTI4Nyw5ICsxMjgw
LDYgQEAgbWFwX2dyYW50X3JlZigKICAgICBzbXBfd21iKCk7CiAgICAgd3Jp
dGVfYXRvbWljKCZtdC0+ZmxhZ3MsIG9wLT5mbGFncyk7CiAKLSAgICBpZiAo
IG5lZWRfaW9tbXUgKQotICAgICAgICBkb3VibGVfZ3RfdW5sb2NrKGxndCwg
cmd0KTsKLQogICAgIG9wLT5kZXZfYnVzX2FkZHIgPSBtZm5fdG9fbWFkZHIo
bWZuKTsKICAgICBvcC0+aGFuZGxlICAgICAgID0gaGFuZGxlOwogICAgIG9w
LT5zdGF0dXMgICAgICAgPSBHTlRTVF9va2F5OwpAQCAtMTQ5NywxOSArMTQ4
NywzNCBAQCB1bm1hcF9jb21tb24oCiAgICAgLyogU2VlIHRoZSByZXNwZWN0
aXZlIGNvbW1lbnQgaW4gbWFwX2dyYW50X3JlZigpLiAqLwogICAgIGlmICgg
cmMgPT0gR05UU1Rfb2theSAmJiBsZCAhPSByZCAmJiBnbnR0YWJfbmVlZF9p
b21tdV9tYXBwaW5nKGxkKSApCiAgICAgewotICAgICAgICB1bnNpZ25lZCBp
bnQga2luZDsKKyAgICAgICAgdm9pZCAqKnNsb3Q7CisgICAgICAgIHVuaW9u
IG1hcHRyYWNrX25vZGUgbm9kZTsKICAgICAgICAgaW50IGVyciA9IDA7CiAK
LSAgICAgICAgZG91YmxlX2d0X2xvY2sobGd0LCByZ3QpOworICAgICAgICBn
cmFudF93cml0ZV9sb2NrKGxndCk7CisgICAgICAgIHNsb3QgPSByYWRpeF90
cmVlX2xvb2t1cF9zbG90KCZsZ3QtPm1hcHRyYWNrX3RyZWUsIG1mbl94KG9w
LT5tZm4pKTsKKyAgICAgICAgbm9kZS5yYXcgPSBsaWtlbHkoc2xvdCkgPyBy
YWRpeF90cmVlX3B0cl90b191bG9uZygqc2xvdCkgOiAwOworCisgICAgICAg
IC8qIFJlZmNvdW50IG11c3Qgbm90IHVuZGVyZmxvdy4gKi8KKyAgICAgICAg
aWYgKCAhKGZsYWdzICYgR05UTUFQX3JlYWRvbmx5ID8gbm9kZS5jbnQucmQt
LQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBu
b2RlLmNudC53ci0tKSApCisgICAgICAgICAgICBCVUcoKTsKIAotICAgICAg
ICBraW5kID0gbWFwa2luZChsZ3QsIHJkLCBvcC0+bWZuKTsKLSAgICAgICAg
aWYgKCAha2luZCApCisgICAgICAgIGlmICggIW5vZGUucmF3ICkKICAgICAg
ICAgICAgIGVyciA9IGlvbW11X2xlZ2FjeV91bm1hcChsZCwgX2RmbihtZm5f
eChvcC0+bWZuKSksIDEpOwotICAgICAgICBlbHNlIGlmICggIShraW5kICYg
TUFQS0lORF9XUklURSkgKQorICAgICAgICBlbHNlIGlmICggIShmbGFncyAm
IEdOVE1BUF9yZWFkb25seSkgJiYgIW5vZGUuY250LndyICkKICAgICAgICAg
ICAgIGVyciA9IGlvbW11X2xlZ2FjeV9tYXAobGQsIF9kZm4obWZuX3gob3At
Pm1mbikpLCBvcC0+bWZuLCAxLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBJT01NVUZfcmVhZGFibGUpOwogCi0gICAgICAgIGRvdWJs
ZV9ndF91bmxvY2sobGd0LCByZ3QpOworICAgICAgICBpZiAoIGVyciApCisg
ICAgICAgICAgICA7CisgICAgICAgIGVsc2UgaWYgKCAhbm9kZS5yYXcgKQor
ICAgICAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUoJmxndC0+bWFwdHJhY2tf
dHJlZSwgbWZuX3gob3AtPm1mbikpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICByYWRpeF90cmVlX3JlcGxhY2Vfc2xvdChzbG90LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJlZV91bG9uZ190
b19wdHIobm9kZS5yYXcpKTsKKworICAgICAgICBncmFudF93cml0ZV91bmxv
Y2sobGd0KTsKIAogICAgICAgICBpZiAoIGVyciApCiAgICAgICAgICAgICBy
YyA9IEdOVFNUX2dlbmVyYWxfZXJyb3I7CkBAIC0xOTU2LDYgKzE5NjEsOCBA
QCBpbnQgZ3JhbnRfdGFibGVfaW5pdChzdHJ1Y3QgZG9tYWluICpkLCBpCiAg
ICAgICAgIGd0LT5tYXB0cmFjayA9IHZ6YWxsb2MoZ3QtPm1heF9tYXB0cmFj
a19mcmFtZXMgKiBzaXplb2YoKmd0LT5tYXB0cmFjaykpOwogICAgICAgICBp
ZiAoIGd0LT5tYXB0cmFjayA9PSBOVUxMICkKICAgICAgICAgICAgIGdvdG8g
b3V0OworCisgICAgICAgIHJhZGl4X3RyZWVfaW5pdCgmZ3QtPm1hcHRyYWNr
X3RyZWUpOwogICAgIH0KIAogICAgIC8qIFNoYXJlZCBncmFudCB0YWJsZS4g
Ki8KQEAgLTM3MDQsNiArMzcxMSw4IEBAIGludCBnbnR0YWJfcmVsZWFzZV9t
YXBwaW5ncyhzdHJ1Y3QgZG9tYWkKIAogICAgIGZvciAoIGhhbmRsZSA9IGd0
LT5tYXB0cmFja19saW1pdDsgaGFuZGxlOyApCiAgICAgeworICAgICAgICBt
Zm5fdCBtZm47CisKICAgICAgICAgLyoKICAgICAgICAgICogRGVhbCB3aXRo
IGZ1bGwgcGFnZXMgc3VjaCB0aGF0IHRoZWlyIGZyZWVpbmcgKGluIHRoZSBi
b2R5IG9mIHRoZQogICAgICAgICAgKiBpZigpKSByZW1haW5zIHNpbXBsZS4K
QEAgLTM4MDEsMTcgKzM4MTAsMzEgQEAgaW50IGdudHRhYl9yZWxlYXNlX21h
cHBpbmdzKHN0cnVjdCBkb21haQogCiAgICAgICAgIHJlZHVjZV9zdGF0dXNf
Zm9yX3BpbihyZCwgYWN0LCBzdGF0dXMsIG1hcC0+ZmxhZ3MgJiBHTlRNQVBf
cmVhZG9ubHkpOwogCisgICAgICAgIG1mbiA9IGFjdC0+bWZuOworCiAgICAg
ICAgIGFjdGl2ZV9lbnRyeV9yZWxlYXNlKGFjdCk7CiAgICAgICAgIGdyYW50
X3JlYWRfdW5sb2NrKHJndCk7CiAKICAgICAgICAgcmN1X3VubG9ja19kb21h
aW4ocmQpOwogCiAgICAgICAgIG1hcC0+ZmxhZ3MgPSAwOworCisgICAgICAg
IC8qCisgICAgICAgICAqIFRoaXMgaXMgZXhjZXNzaXZlIGluIHRoYXQgYSBz
aW5nbGUgc3VjaCBjYWxsIHdvdWxkIHN1ZmZpY2UgcGVyCisgICAgICAgICAq
IG1hcHBlZCBNRk4gKG9yIG5vbmUgYXQgYWxsLCBpZiBubyBlbnRyeSB3YXMg
ZXZlciBpbnNlcnRlZCkuIEJ1dCBpdAorICAgICAgICAgKiBzaG91bGQgYmUg
dGhlIGNvbW1vbiBjYXNlIGZvciBhbiBNRk4gdG8gYmUgbWFwcGVkIGp1c3Qg
b25jZSwgYW5kCisgICAgICAgICAqIHRoaXMgd2F5IHdlIGRvbid0IG5lZWQg
dG8gZnVydGhlciBtYWludGFpbiB0aGUgY291bnRlcnMuIFdlIGFsc28KKyAg
ICAgICAgICogZG9uJ3Qgd2FudCB0byBsZWF2ZSBjbGVhbmluZyB1cCBvZiB0
aGUgdHJlZSBhcyBhIHdob2xlIHRvIHRoZSBlbmQKKyAgICAgICAgICogb2Yg
dGhlIGZ1bmN0aW9uLCBhcyB0aGlzIGNvdWxkIHRha2UgcXVpdGUgc29tZSB0
aW1lLgorICAgICAgICAgKi8KKyAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUo
Jmd0LT5tYXB0cmFja190cmVlLCBtZm5feChtZm4pKTsKICAgICB9CiAKICAg
ICBndC0+bWFwdHJhY2tfbGltaXQgPSAwOwogICAgIEZSRUVfWEVOSEVBUF9Q
QUdFKGd0LT5tYXB0cmFja1swXSk7CiAKKyAgICByYWRpeF90cmVlX2Rlc3Ry
b3koJmd0LT5tYXB0cmFja190cmVlLCBOVUxMKTsKKwogICAgIHJldHVybiAw
OwogfQogCi0tLSBhL3hlbi9pbmNsdWRlL3hlbi9yYWRpeC10cmVlLmgKKysr
IGIveGVuL2luY2x1ZGUveGVuL3JhZGl4LXRyZWUuaApAQCAtMTkwLDYgKzE5
MCwyNSBAQCBzdGF0aWMgaW5saW5lIGludCByYWRpeF90cmVlX3B0cl90b19p
bnQoCiAgICAgcmV0dXJuIChpbnQpKChsb25nKXB0ciA+PiAyKTsKIH0KIAor
LyoqCisgKiByYWRpeF90cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25n
fToKKyAqCisgKiBTYW1lIGZvciB1bnNpZ25lZCBsb25nIHZhbHVlcy4gQmV3
YXJlIHRob3VnaCB0aGF0IG9ubHkgQklUU19QRVJfTE9ORy0yCisgKiBiaXRz
IGFyZSBhY3R1YWxseSB1c2FibGUgZm9yIHRoZSB2YWx1ZS4KKyAqLworc3Rh
dGljIGlubGluZSB2b2lkICpyYWRpeF90cmVlX3Vsb25nX3RvX3B0cih1bnNp
Z25lZCBsb25nIHZhbCkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHB0ciA9ICh2
YWwgPDwgMikgfCAweDI7CisgICAgQVNTRVJUKChwdHIgPj4gMikgPT0gdmFs
KTsKKyAgICByZXR1cm4gKHZvaWQgKilwdHI7Cit9CisKK3N0YXRpYyBpbmxp
bmUgdW5zaWduZWQgbG9uZyByYWRpeF90cmVlX3B0cl90b191bG9uZyh2b2lk
ICpwdHIpCit7CisgICAgQVNTRVJUKCgodW5zaWduZWQgbG9uZylwdHIgJiAw
eDMpID09IDB4Mik7CisgICAgcmV0dXJuICh1bnNpZ25lZCBsb25nKXB0ciA+
PiAyOworfQorCiBpbnQgcmFkaXhfdHJlZV9pbnNlcnQoc3RydWN0IHJhZGl4
X3RyZWVfcm9vdCAqLCB1bnNpZ25lZCBsb25nLCB2b2lkICopOwogdm9pZCAq
cmFkaXhfdHJlZV9sb29rdXAoc3RydWN0IHJhZGl4X3RyZWVfcm9vdCAqLCB1
bnNpZ25lZCBsb25nKTsKIHZvaWQgKipyYWRpeF90cmVlX2xvb2t1cF9zbG90
KHN0cnVjdCByYWRpeF90cmVlX3Jvb3QgKiwgdW5zaWduZWQgbG9uZyk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-3.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGF2b2lkIHRyaWdnZXJpbmcgYXNzZXJ0aW9uIGluIHJhZGl4
X3RyZWVfdWxvbmdfdG9fcHRyKCkKClJlbGV2YW50IHF1b3RlcyBmcm9tIHRo
ZSBDMTEgc3RhbmRhcmQ6CgoiRXhjZXB0IHdoZXJlIGV4cGxpY2l0bHkgc3Rh
dGVkIG90aGVyd2lzZSwgZm9yIHRoZSBwdXJwb3NlcyBvZiB0aGlzCiBzdWJj
bGF1c2UgdW5uYW1lZCBtZW1iZXJzIG9mIG9iamVjdHMgb2Ygc3RydWN0dXJl
IGFuZCB1bmlvbiB0eXBlIGRvIG5vdAogcGFydGljaXBhdGUgaW4gaW5pdGlh
bGl6YXRpb24uIFVubmFtZWQgbWVtYmVycyBvZiBzdHJ1Y3R1cmUgb2JqZWN0
cwogaGF2ZSBpbmRldGVybWluYXRlIHZhbHVlIGV2ZW4gYWZ0ZXIgaW5pdGlh
bGl6YXRpb24uIgoKIklmIHRoZXJlIGFyZSBmZXdlciBpbml0aWFsaXplcnMg
aW4gYSBicmFjZS1lbmNsb3NlZCBsaXN0IHRoYW4gdGhlcmUgYXJlCiBlbGVt
ZW50cyBvciBtZW1iZXJzIG9mIGFuIGFnZ3JlZ2F0ZSwgWy4uLl0sIHRoZSBy
ZW1haW5kZXIgb2YgdGhlCiBhZ2dyZWdhdGUgc2hhbGwgYmUgaW5pdGlhbGl6
ZWQgaW1wbGljaXRseSB0aGUgc2FtZSBhcyBvYmplY3RzIHRoYXQgaGF2ZQog
c3RhdGljIHN0b3JhZ2UgZHVyYXRpb24uIgoKIklmIGFuIG9iamVjdCB0aGF0
IGhhcyBzdGF0aWMgb3IgdGhyZWFkIHN0b3JhZ2UgZHVyYXRpb24gaXMgbm90
CiBpbml0aWFsaXplZCBleHBsaWNpdGx5LCB0aGVuOgogWy4uLl0KIOKAlCBp
ZiBpdCBpcyBhbiBhZ2dyZWdhdGUsIGV2ZXJ5IG1lbWJlciBpcyBpbml0aWFs
aXplZCAocmVjdXJzaXZlbHkpCiAgIGFjY29yZGluZyB0byB0aGVzZSBydWxl
cywgYW5kIGFueSBwYWRkaW5nIGlzIGluaXRpYWxpemVkIHRvIHplcm8KICAg
Yml0czsKIFsuLi5dIgoKIkEgYml0LWZpZWxkIGRlY2xhcmF0aW9uIHdpdGgg
bm8gZGVjbGFyYXRvciwgYnV0IG9ubHkgYSBjb2xvbiBhbmQgYQogd2lkdGgs
IGluZGljYXRlcyBhbiB1bm5hbWVkIGJpdC1maWVsZC4iIEZvb3Rub3RlOiAi
QW4gdW5uYW1lZCBiaXQtZmllbGQKIHN0cnVjdHVyZSBtZW1iZXIgaXMgdXNl
ZnVsIGZvciBwYWRkaW5nIHRvIGNvbmZvcm0gdG8gZXh0ZXJuYWxseSBpbXBv
c2VkCiBsYXlvdXRzLiIKCiJUaGVyZSBtYXkgYmUgdW5uYW1lZCBwYWRkaW5n
IHdpdGhpbiBhIHN0cnVjdHVyZSBvYmplY3QsIGJ1dCBub3QgYXQgaXRzCiBi
ZWdpbm5pbmcuIgoKV2hpY2ggbWFrZXMgbWUgY29uY2x1ZGU6Ci0gV2hldGhl
ciBhbiB1bm5hbWVkIGJpdC1maWVsZCBtZW1iZXIgaXMgYW4gdW5uYW1lZCBt
ZW1iZXIgb3IgcGFkZGluZyBpcwogIHVuY2xlYXIsIGFuZCBoZW5jZSBhbHNv
IHdoZXRoZXIgdGhlIGxhc3QgcXVvdGUgYWJvdmUgd291bGQgcmVuZGVyIHRo
ZQogIGJpZyBlbmRpYW4gY2FzZSBvZiB0aGUgc3RydWN0dXJlIGRlY2xhcmF0
aW9uIGludmFsaWQuCi0gV2hldGhlciB0aGUgbnVtYmVyIG9mIG1lbWJlcnMg
b2YgYW4gYWdncmVnYXRlIGluY2x1ZGVzIHVubmFtZWQgb25lcyBpcwogIGFs
c28gbm90IHJlYWxseSBjbGVhci4KLSBUaGUgaW5pdGlhbGl6ZXIgaW4gbWFw
X2dyYW50X3JlZigpIGluaXRpYWxpemVzIGFsbCBmaWVsZHMgb2YgdGhlICJj
bnQiCiAgc3ViLXN0cnVjdHVyZSBvZiB0aGUgdW5pb24sIHNvIGFzc3VtaW5n
IHRoZSBzZWNvbmQgcXVvdGUgYWJvdmUgYXBwbGllcwogIGhlcmUgKGluZGly
ZWN0bHkpLCB0aGUgY29tcGlsZXIgaXNuJ3QgcmVxdWlyZWQgdG8gaW1wbGlj
aXRseQogIGluaXRpYWxpemUgdGhlIHJlc3QgKGkuZS4gaW4gcGFydGljdWxh
ciBhbnkgcGFkZGluZykgbGlrZSB3b3VsZCBoYXBwZW4KICBmb3Igc3RhdGlj
IHN0b3JhZ2UgZHVyYXRpb24gb2JqZWN0cy4KCkdjYyA3LjQuMSBjYW4gYmUg
b2JzZXJ2ZWQgKGFwcGFyZW50bHkgaW4gZGVidWcgYnVpbGRzIG9ubHkpIHRv
IHRyYW5zbGF0ZQphZm9yZW1lbnRpb25lZCBpbml0aWFsaXplciB0byBhIHJl
YWQtbW9kaWZ5LXdyaXRlIG9wZXJhdGlvbiBvZiBhIHN0YWNrCnZhcmlhYmxl
LCBsZWF2aW5nIHVuY2hhbmdlZCB0aGUgdG9wIHR3byBiaXRzIG9mIHdoYXRl
dmVyIHdhcyBwcmV2aW91c2x5CmluIHRoYXQgc3RhY2sgc2xvdC4gQ2xlYXJs
eSBpZiBlaXRoZXIgb2YgdGhlIHR3byBiaXRzIHdlcmUgc2V0LApyYWRpeF90
cmVlX3Vsb25nX3RvX3B0cigpJ3MgYXNzZXJ0aW9uIHdvdWxkIHRyaWdnZXIu
CgpUaGVyZWZvcmUsIHRvIGJlIG9uIHRoZSBzYWZlIHNpZGUsIGFkZCBhbiBl
eHBsaWNpdCBwYWRkaW5nIGZpZWxkIGZvciB0aGUKbm9uLWJpZy1lbmRpYW4t
Yml0ZmllbGRzIGNhc2UgYW5kIGdpdmUgYSBkdW1teSBuYW1lIHRvIGJvdGgg
cGFkZGluZwpmaWVsZHMuCgpGaXhlczogOTc4MWI1MWVmZGUyICgiZ250dGFi
OiByZXBsYWNlIG1hcGtpbmQoKSIpClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29w
ZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+CgotLS0gYS94ZW4vY29t
bW9uL2dyYW50X3RhYmxlLmMKKysrIGIveGVuL2NvbW1vbi9ncmFudF90YWJs
ZS5jCkBAIC05NTIsMTAgKzk1MiwxMyBAQCB1bmlvbiBtYXB0cmFja19ub2Rl
IHsKICAgICBzdHJ1Y3QgewogICAgICAgICAvKiBSYWRpeCB0cmVlIHNsb3Qg
cG9pbnRlcnMgdXNlIHR3byBvZiB0aGUgYml0cy4gKi8KICNpZmRlZiBfX0JJ
R19FTkRJQU5fQklURklFTEQKLSAgICAgICAgdW5zaWduZWQgbG9uZyAgICA6
IDI7CisgICAgICAgIHVuc2lnbmVkIGxvbmcgXzAgOiAyOwogI2VuZGlmCiAg
ICAgICAgIHVuc2lnbmVkIGxvbmcgcmQgOiBCSVRTX1BFUl9MT05HIC8gMiAt
IDE7CiAgICAgICAgIHVuc2lnbmVkIGxvbmcgd3IgOiBCSVRTX1BFUl9MT05H
IC8gMiAtIDE7CisjaWZuZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAorICAg
ICAgICB1bnNpZ25lZCBsb25nIF8wIDogMjsKKyNlbmRpZgogICAgIH0gY250
OwogICAgIHVuc2lnbmVkIGxvbmcgcmF3OwogfTsK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.11-1.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.11-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGFkZCBwcmVlbXB0aW9uIGNoZWNrIHRvIGdudHRhYl9yZWxl
YXNlX21hcHBpbmdzKCkKCkEgZ3Vlc3QgbWF5IGRpZSB3aXRoIG1hbnkgZ3Jh
bnQgbWFwcGluZ3Mgc3RpbGwgaW4gcGxhY2UsIG9yIHNpbXBseSB3aXRoCmEg
bGFyZ2UgbWFwdHJhY2sgdGFibGUuIEl0ZXJhdGluZyB0aHJvdWdoIHRoaXMg
bWF5IHRha2UgbW9yZSB0aW1lIHRoYW4KaXMgcmVhc29uYWJsZSB3aXRob3V0
IGludGVybWVkaWF0ZSBwcmVlbXB0aW9uICh0byBydW4gc29mdGlycXMgYW5k
CnBlcmhhcHMgdGhlIHNjaGVkdWxlcikuCgpNb3ZlIHRoZSBpbnZvY2F0aW9u
IG9mIHRoZSBmdW5jdGlvbiB0byB0aGUgc2VjdGlvbiB3aGVyZSBvdGhlcgpy
ZXN0YXJ0YWJsZSBmdW5jdGlvbnMgZ2V0IGludm9rZWQsIGFuZCBoYXZlIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgY2hlY2sKZm9yIHByZWVtcHRpb24gZXZlcnkg
b25jZSBpbiBhIHdoaWxlLiBIYXZlIGl0IGl0ZXJhdGUgdGhlIHRhYmxlCmJh
Y2t3YXJkcywgc3VjaCB0aGF0IGRlY3JlYXNpbmcgdGhlIG1hcHRyYWNrIGxp
bWl0IGlzIGFsbCBpdCB0YWtlcyB0bwpjb252ZXkgcmVzdGFydCBpbmZvcm1h
dGlvbi4KCkluIGRvbWFpbl90ZWFyZG93bigpIGludHJvZHVjZSBQUk9HX25v
bmUgc3VjaCB0aGF0IGluc2VydGluZyBhdCB0aGUKZnJvbnQgd2lsbCBiZSBl
YXNpZXIgZ29pbmcgZm9yd2FyZC4KClRoaXMgaXMgcGFydCBvZiBDVkUtMjAy
MS0yODY5OCAvIFhTQS0zODAuCgpSZXBvcnRlZC1ieTogQW5kcmV3IENvb3Bl
ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
SnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9j
b21tb24vZG9tYWluLmMKKysrIGIveGVuL2NvbW1vbi9kb21haW4uYwpAQCAt
NjQ2LDEzICs2NDYsMTUgQEAgaW50IGRvbWFpbl9raWxsKHN0cnVjdCBkb21h
aW4gKmQpCiAgICAgICAgIGlmICggZC0+aXNfZHlpbmcgIT0gRE9NRFlJTkdf
YWxpdmUgKQogICAgICAgICAgICAgcmV0dXJuIGRvbWFpbl9raWxsKGQpOwog
ICAgICAgICBkLT5pc19keWluZyA9IERPTURZSU5HX2R5aW5nOwotICAgICAg
ICBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhkKTsKICAgICAgICAgdG1lbV9k
ZXN0cm95KGQtPnRtZW1fY2xpZW50KTsKICAgICAgICAgdm51bWFfZGVzdHJv
eShkLT52bnVtYSk7CiAgICAgICAgIGRvbWFpbl9zZXRfb3V0c3RhbmRpbmdf
cGFnZXMoZCwgMCk7CiAgICAgICAgIGQtPnRtZW1fY2xpZW50ID0gTlVMTDsK
ICAgICAgICAgLyogZmFsbHRocm91Z2ggKi8KICAgICBjYXNlIERPTURZSU5H
X2R5aW5nOgorICAgICAgICByYyA9IGdudHRhYl9yZWxlYXNlX21hcHBpbmdz
KGQpOworICAgICAgICBpZiAoIHJjICkKKyAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICByYyA9IGV2dGNobl9kZXN0cm95KGQpOwogICAgICAgICBpZiAo
IHJjICkKICAgICAgICAgICAgIGJyZWFrOwotLS0gYS94ZW4vY29tbW9uL2dy
YW50X3RhYmxlLmMKKysrIGIveGVuL2NvbW1vbi9ncmFudF90YWJsZS5jCkBA
IC02Miw3ICs2MiwxMyBAQCBzdHJ1Y3QgZ3JhbnRfdGFibGUgewogICAgIHVu
c2lnbmVkIGludCAgICAgICAgICBucl9ncmFudF9mcmFtZXM7CiAgICAgLyog
TnVtYmVyIG9mIGdyYW50IHN0YXR1cyBmcmFtZXMgc2hhcmVkIHdpdGggZ3Vl
c3QgKGZvciB2ZXJzaW9uIDIpICovCiAgICAgdW5zaWduZWQgaW50ICAgICAg
ICAgIG5yX3N0YXR1c19mcmFtZXM7Ci0gICAgLyogTnVtYmVyIG9mIGF2YWls
YWJsZSBtYXB0cmFjayBlbnRyaWVzLiAqLworICAgIC8qCisgICAgICogTnVt
YmVyIG9mIGF2YWlsYWJsZSBtYXB0cmFjayBlbnRyaWVzLiAgRm9yIGNsZWFu
dXAgcHVycG9zZXMgaXQgaXMKKyAgICAgKiBpbXBvcnRhbnQgdG8gcmVhbGl6
ZSB0aGF0IHRoaXMgZmllbGQgYW5kIEBtYXB0cmFjayBmdXJ0aGVyIGRvd24g
d2lsbAorICAgICAqIG9ubHkgZXZlciBiZSBhY2Nlc3NlZCBieSB0aGUgbG9j
YWwgZG9tYWluLiAgVGh1cyBpdCBpcyBva2F5IHRvIGNsZWFuCisgICAgICog
dXAgZWFybHksIGFuZCB0byBzaHJpbmsgdGhlIGxpbWl0IGZvciB0aGUgcHVy
cG9zZSBvZiB0cmFja2luZyBjbGVhbnVwCisgICAgICogcHJvZ3Jlc3MuCisg
ICAgICovCiAgICAgdW5zaWduZWQgaW50ICAgICAgICAgIG1hcHRyYWNrX2xp
bWl0OwogICAgIC8qIFNoYXJlZCBncmFudCB0YWJsZSAoc2VlIGluY2x1ZGUv
cHVibGljL2dyYW50X3RhYmxlLmgpLiAqLwogICAgIHVuaW9uIHsKQEAgLTM2
MTgsOSArMzYyNCw3IEBAIGdyYW50X3RhYmxlX2NyZWF0ZSgKICAgICByZXR1
cm4gcmV0OwogfQogCi12b2lkCi1nbnR0YWJfcmVsZWFzZV9tYXBwaW5ncygK
LSAgICBzdHJ1Y3QgZG9tYWluICpkKQoraW50IGdudHRhYl9yZWxlYXNlX21h
cHBpbmdzKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAgc3RydWN0IGdyYW50
X3RhYmxlICAgKmd0ID0gZC0+Z3JhbnRfdGFibGUsICpyZ3Q7CiAgICAgc3Ry
dWN0IGdyYW50X21hcHBpbmcgKm1hcDsKQEAgLTM2MzQsOCArMzYzOCwzMiBA
QCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncygKIAogICAgIEJVR19PTighZC0+
aXNfZHlpbmcpOwogCi0gICAgZm9yICggaGFuZGxlID0gMDsgaGFuZGxlIDwg
Z3QtPm1hcHRyYWNrX2xpbWl0OyBoYW5kbGUrKyApCisgICAgaWYgKCAhZ3Qg
fHwgIWd0LT5tYXB0cmFjayApCisgICAgICAgIHJldHVybiAwOworCisgICAg
Zm9yICggaGFuZGxlID0gZ3QtPm1hcHRyYWNrX2xpbWl0OyBoYW5kbGU7ICkK
ICAgICB7CisgICAgICAgIC8qCisgICAgICAgICAqIERlYWwgd2l0aCBmdWxs
IHBhZ2VzIHN1Y2ggdGhhdCB0aGVpciBmcmVlaW5nIChpbiB0aGUgYm9keSBv
ZiB0aGUKKyAgICAgICAgICogaWYoKSkgcmVtYWlucyBzaW1wbGUuCisgICAg
ICAgICAqLworICAgICAgICBpZiAoIGhhbmRsZSA8IGd0LT5tYXB0cmFja19s
aW1pdCAmJiAhKGhhbmRsZSAlIE1BUFRSQUNLX1BFUl9QQUdFKSApCisgICAg
ICAgIHsKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBDaGFuZ2lu
ZyBtYXB0cmFja19saW1pdCBhbHRlcnMgbnJfbWFwdHJhY2tfZnJhbWVzKCkn
ZXMgcmV0dXJuCisgICAgICAgICAgICAgKiB2YWx1ZS4gRnJlZSB0aGUgdGhl
biBleGNlc3MgdHJhaWxpbmcgcGFnZSByaWdodCBoZXJlLCByYXRoZXIKKyAg
ICAgICAgICAgICAqIHRoYW4gbGVhdmluZyBpdCB0byBncmFudF90YWJsZV9k
ZXN0cm95KCkgKGFuZCBpbiB0dXJuIHJlcXVpcmluZworICAgICAgICAgICAg
ICogdG8gbGVhdmUgZ3QtPm1hcHRyYWNrX2xpbWl0IHVuYWx0ZXJlZCkuCisg
ICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGd0LT5tYXB0cmFja19saW1p
dCA9IGhhbmRsZTsKKyAgICAgICAgICAgIEZSRUVfWEVOSEVBUF9QQUdFKGd0
LT5tYXB0cmFja1tucl9tYXB0cmFja19mcmFtZXMoZ3QpXSk7CisKKyAgICAg
ICAgICAgIGlmICggaHlwZXJjYWxsX3ByZWVtcHRfY2hlY2soKSApCisgICAg
ICAgICAgICAgICAgcmV0dXJuIC1FUkVTVEFSVDsKKyAgICAgICAgfQorCisg
ICAgICAgIC0taGFuZGxlOworCiAgICAgICAgIG1hcCA9ICZtYXB0cmFja19l
bnRyeShndCwgaGFuZGxlKTsKICAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3Mg
JiAoR05UTUFQX2RldmljZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgKQogICAg
ICAgICAgICAgY29udGludWU7CkBAIC0zNzIzLDYgKzM3NTEsMTEgQEAgZ250
dGFiX3JlbGVhc2VfbWFwcGluZ3MoCiAKICAgICAgICAgbWFwLT5mbGFncyA9
IDA7CiAgICAgfQorCisgICAgZ3QtPm1hcHRyYWNrX2xpbWl0ID0gMDsKKyAg
ICBGUkVFX1hFTkhFQVBfUEFHRShndC0+bWFwdHJhY2tbMF0pOworCisgICAg
cmV0dXJuIDA7CiB9CiAKIHZvaWQgZ3JhbnRfdGFibGVfd2Fybl9hY3RpdmVf
Z3JhbnRzKHN0cnVjdCBkb21haW4gKmQpCkBAIC0zNzg1LDggKzM4MTgsNyBA
QCBncmFudF90YWJsZV9kZXN0cm95KAogICAgICAgICBmcmVlX3hlbmhlYXBf
cGFnZSh0LT5zaGFyZWRfcmF3W2ldKTsKICAgICB4ZnJlZSh0LT5zaGFyZWRf
cmF3KTsKIAotICAgIGZvciAoIGkgPSAwOyBpIDwgbnJfbWFwdHJhY2tfZnJh
bWVzKHQpOyBpKysgKQotICAgICAgICBmcmVlX3hlbmhlYXBfcGFnZSh0LT5t
YXB0cmFja1tpXSk7CisgICAgQVNTRVJUKCF0LT5tYXB0cmFja19saW1pdCk7
CiAgICAgdmZyZWUodC0+bWFwdHJhY2spOwogCiAgICAgZm9yICggaSA9IDA7
IGkgPCBucl9hY3RpdmVfZ3JhbnRfZnJhbWVzKHQpOyBpKysgKQotLS0gYS94
ZW4vaW5jbHVkZS94ZW4vZ3JhbnRfdGFibGUuaAorKysgYi94ZW4vaW5jbHVk
ZS94ZW4vZ3JhbnRfdGFibGUuaApAQCAtNDYsOSArNDYsNyBAQCBpbnQgZ3Jh
bnRfdGFibGVfc2V0X2xpbWl0cyhzdHJ1Y3QgZG9tYWluCiB2b2lkIGdyYW50
X3RhYmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKTsK
IAogLyogRG9tYWluIGRlYXRoIHJlbGVhc2Ugb2YgZ3JhbnRlZCBtYXBwaW5n
cyBvZiBvdGhlciBkb21haW5zJyBtZW1vcnkuICovCi12b2lkCi1nbnR0YWJf
cmVsZWFzZV9tYXBwaW5ncygKLSAgICBzdHJ1Y3QgZG9tYWluICpkKTsKK2lu
dCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWluICpkKTsK
IAogaW50IG1lbV9zaGFyaW5nX2dyZWZfdG9fZ2ZuKHN0cnVjdCBncmFudF90
YWJsZSAqZ3QsIGdyYW50X3JlZl90IHJlZiwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBnZm5fdCAqZ2ZuLCB1aW50MTZfdCAqc3RhdHVzKTsK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.11-2.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.11-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IHJlcGxhY2UgbWFwa2luZCgpCgptYXBraW5kKCkgZG9lc24n
dCBzY2FsZSB2ZXJ5IHdlbGwgd2l0aCBsYXJnZXIgbWFwdHJhY2sgZW50cnkg
Y291bnRzLAp1c2luZyBhIGJydXRlIGZvcmNlIGxpbmVhciBzZWFyY2ggdGhy
b3VnaCBhbGwgZW50cmllcywgd2l0aCB0aGUgb25seQpvcHRpb24gb2YgYW4g
ZWFybHkgbG9vcCBleGl0IGlmIGEgbWF0Y2hpbmcgd3JpdGFibGUgZW50cnkg
d2FzIGZvdW5kLgpJbnRyb2R1Y2UgYSByYWRpeCB0cmVlIGFsb25nc2lkZSB0
aGUgbWFpbiBtYXB0cmFjayB0YWJsZSwgdGh1cwphbGxvd2luZyBtdWNoIGZh
c3RlciBNRk4tYmFzZWQgbG9va3VwLiBUbyBhdm9pZCB0aGUgbmVlZCB0byBh
Y3R1YWxseQphbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGluZGl2aWR1YWwgbm9k
ZXMsIGVuY29kZSB0aGUgdHdvIGNvdW50ZXJzIGluIHRoZQpub2RlIHBvaW50
ZXJzIHRoZW1zZWx2ZXMsIHRodXMgbGltaXRpbmcgdGhlIG51bWJlciBvZiBw
ZXJtaXR0ZWQKc2ltdWx0YW5lb3VzIHIvbyBhbmQgci93IG1hcHBpbmdzIG9m
IHRoZSBzYW1lIE1GTiB0byAywrPCuS0xICg2NC1iaXQpIC8KMsK54oG1LTEg
KDMyLWJpdCkgZWFjaC4KClRvIGF2b2lkIGVuZm9yY2luZyBhbiB1bm5lY2Vz
c2FyaWx5IGxvdyBib3VuZCBvbiB0aGUgbnVtYmVyIG9mCnNpbXVsdGFuZW91
cyBtYXBwaW5ncyBvZiBhIHNpbmdsZSBNRk4sIGludHJvZHVjZQpyYWRpeF90
cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfSBwYXJhbGxlbGluZwpy
YWRpeF90cmVlX3tpbnRfdG9fcHRyLHB0cl90b19pbnR9LgoKQXMgYSBjb25z
ZXF1ZW5jZSBsb2NraW5nIGNoYW5nZXMgYXJlIGFsc28gYXBwbGljYWJsZTog
V2l0aCB0aGVyZSBubwpsb25nZXIgYmVpbmcgYW55IGluc3BlY3Rpb24gb2Yg
dGhlIHJlbW90ZSBkb21haW4ncyBhY3RpdmUgZW50cmllcywKdGhlcmUncyBh
bHNvIG5vIG5lZWQgYW55bW9yZSB0byBob2xkIHRoZSByZW1vdGUgZG9tYWlu
J3MgZ3JhbnQgdGFibGUKbG9jay4gQW5kIHNpbmNlIHdlJ3JlIG5vIGxvbmdl
ciBpdGVyYXRpbmcgb3ZlciB0aGUgbG9jYWwgZG9tYWluJ3MgbWFwCnRyYWNr
IHRhYmxlLCB0aGUgbG9jayBpbiBtYXBfZ3JhbnRfcmVmKCkgY2FuIGFsc28g
YmUgZHJvcHBlZCBiZWZvcmUgdGhlCm5ldyBtYXB0cmFjayBlbnRyeSBhY3R1
YWxseSBnZXRzIHBvcHVsYXRlZC4KCkFzIGEgbmljZSBzaWRlIGVmZmVjdCB0
aGlzIGFsc28gcmVkdWNlcyB0aGUgbnVtYmVyIG9mIElPTU1VIG9wZXJhdGlv
bnMKaW4gdW5tYXBfY29tbW9uKCk6IFByZXZpb3VzbHkgd2Ugd291bGQgaGF2
ZSAiZXN0YWJsaXNoZWQiIGEgcmVhZGFibGUKbWFwcGluZyB3aGVuZXZlciB3
ZSBkaWRuJ3QgZmluZCBhIHdyaXRhYmxlIGVudHJ5IGFueW1vcmUgKHlldCwg
b2YKY291cnNlLCBhdCBsZWFzdCBvbmUgcmVhZGFibGUgb25lKS4gQnV0IHdl
IG9ubHkgbmVlZCB0byBkbyB0aGlzIGlmIHdlCmFjdHVhbGx5IGRyb3BwZWQg
dGhlIGxhc3Qgd3JpdGFibGUgZW50cnksIG5vdCBpZiB0aGVyZSB3ZXJlIG5v
bmUgYWxyZWFkeQpiZWZvcmUuCgpUaGlzIGlzIHBhcnQgb2YgQ1ZFLTIwMjEt
Mjg2OTggLyBYU0EtMzgwLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2gg
PGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxs
IDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRf
dGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTM2
LDYgKzM2LDcgQEAKICNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNpbmNsdWRl
IDx4ZW4vcGFnaW5nLmg+CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4K
KyNpbmNsdWRlIDx4ZW4vcmFkaXgtdHJlZS5oPgogI2luY2x1ZGUgPHhlbi92
bWFwLmg+CiAjaW5jbHVkZSA8eHNtL3hzbS5oPgogI2luY2x1ZGUgPGFzbS9m
bHVzaHRsYi5oPgpAQCAtODAsOCArODEsMTMgQEAgc3RydWN0IGdyYW50X3Rh
YmxlIHsKICAgICBncmFudF9zdGF0dXNfdCAgICAgICAqKnN0YXR1czsKICAg
ICAvKiBBY3RpdmUgZ3JhbnQgdGFibGUuICovCiAgICAgc3RydWN0IGFjdGl2
ZV9ncmFudF9lbnRyeSAqKmFjdGl2ZTsKLSAgICAvKiBNYXBwaW5nIHRyYWNr
aW5nIHRhYmxlIHBlciB2Y3B1LiAqLworICAgIC8qIEhhbmRsZS1pbmRleGVk
IHRyYWNraW5nIHRhYmxlIG9mIG1hcHBpbmdzLiAqLwogICAgIHN0cnVjdCBn
cmFudF9tYXBwaW5nICoqbWFwdHJhY2s7CisgICAgLyoKKyAgICAgKiBNRk4t
aW5kZXhlZCB0cmFja2luZyB0cmVlIG9mIG1hcHBpbmdzLCBpZiBuZWVkZWQu
ICBOb3RlIHRoYXQgdGhpcyBpcworICAgICAqIHByb3RlY3RlZCBieSBAbG9j
aywgbm90IEBtYXB0cmFja19sb2NrLgorICAgICAqLworICAgIHN0cnVjdCBy
YWRpeF90cmVlX3Jvb3QgbWFwdHJhY2tfdHJlZTsKIAogICAgIC8qIERvbWFp
biB0byB3aGljaCB0aGlzIHN0cnVjdCBncmFudF90YWJsZSBiZWxvbmdzLiAq
LwogICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmRvbWFpbjsKQEAgLTQyMSwz
NCArNDI3LDYgQEAgc3RhdGljIGludCBnZXRfcGFnZWRfZnJhbWUodW5zaWdu
ZWQgbG9uZwogICAgIHJldHVybiByYzsKIH0KIAotc3RhdGljIGlubGluZSB2
b2lkCi1kb3VibGVfZ3RfbG9jayhzdHJ1Y3QgZ3JhbnRfdGFibGUgKmxndCwg
c3RydWN0IGdyYW50X3RhYmxlICpyZ3QpCi17Ci0gICAgLyoKLSAgICAgKiBT
ZWUgbWFwa2luZCgpIGZvciB3aHkgdGhlIHdyaXRlIGxvY2sgaXMgYWxzbyBy
ZXF1aXJlZCBmb3IgdGhlCi0gICAgICogcmVtb3RlIGRvbWFpbi4KLSAgICAg
Ki8KLSAgICBpZiAoIGxndCA8IHJndCApCi0gICAgewotICAgICAgICBncmFu
dF93cml0ZV9sb2NrKGxndCk7Ci0gICAgICAgIGdyYW50X3dyaXRlX2xvY2so
cmd0KTsKLSAgICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAgICAgaWYgKCBs
Z3QgIT0gcmd0ICkKLSAgICAgICAgICAgIGdyYW50X3dyaXRlX2xvY2socmd0
KTsKLSAgICAgICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOwotICAgIH0KLX0K
LQotc3RhdGljIGlubGluZSB2b2lkCi1kb3VibGVfZ3RfdW5sb2NrKHN0cnVj
dCBncmFudF90YWJsZSAqbGd0LCBzdHJ1Y3QgZ3JhbnRfdGFibGUgKnJndCkK
LXsKLSAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKLSAgICBpZiAoIGxn
dCAhPSByZ3QgKQotICAgICAgICBncmFudF93cml0ZV91bmxvY2socmd0KTsK
LX0KLQogI2RlZmluZSBJTlZBTElEX01BUFRSQUNLX0hBTkRMRSBVSU5UX01B
WAogCiBzdGF0aWMgaW5saW5lIGdyYW50X2hhbmRsZV90CkBAIC04NzEsNDEg
Kzg0OSwxNyBAQCBzdGF0aWMgc3RydWN0IGFjdGl2ZV9ncmFudF9lbnRyeSAq
Z3JhbnRfCiAgICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiB9CiAKLSNk
ZWZpbmUgTUFQS0lORF9SRUFEIDEKLSNkZWZpbmUgTUFQS0lORF9XUklURSAy
Ci1zdGF0aWMgdW5zaWduZWQgaW50IG1hcGtpbmQoCi0gICAgc3RydWN0IGdy
YW50X3RhYmxlICpsZ3QsIGNvbnN0IHN0cnVjdCBkb21haW4gKnJkLCBtZm5f
dCBtZm4pCi17Ci0gICAgc3RydWN0IGdyYW50X21hcHBpbmcgKm1hcDsKLSAg
ICBncmFudF9oYW5kbGVfdCBoYW5kbGUsIGxpbWl0ID0gbGd0LT5tYXB0cmFj
a19saW1pdDsKLSAgICB1bnNpZ25lZCBpbnQga2luZCA9IDA7Ci0KLSAgICAv
KgotICAgICAqIE11c3QgaGF2ZSB0aGUgbG9jYWwgZG9tYWluJ3MgZ3JhbnQg
dGFibGUgd3JpdGUgbG9jayB3aGVuCi0gICAgICogaXRlcmF0aW5nIG92ZXIg
aXRzIG1hcHRyYWNrIGVudHJpZXMuCi0gICAgICovCi0gICAgQVNTRVJUKHBl
cmNwdV9yd19pc193cml0ZV9sb2NrZWQoJmxndC0+bG9jaykpOwotICAgIC8q
Ci0gICAgICogTXVzdCBoYXZlIHRoZSByZW1vdGUgZG9tYWluJ3MgZ3JhbnQg
dGFibGUgd3JpdGUgbG9jayB3aGlsZQotICAgICAqIGNvdW50aW5nIGl0cyBh
Y3RpdmUgZW50cmllcy4KLSAgICAgKi8KLSAgICBBU1NFUlQocGVyY3B1X3J3
X2lzX3dyaXRlX2xvY2tlZCgmcmQtPmdyYW50X3RhYmxlLT5sb2NrKSk7Ci0K
LSAgICBzbXBfcm1iKCk7Ci0KLSAgICBmb3IgKCBoYW5kbGUgPSAwOyAhKGtp
bmQgJiBNQVBLSU5EX1dSSVRFKSAmJiBoYW5kbGUgPCBsaW1pdDsgaGFuZGxl
KysgKQotICAgIHsKLSAgICAgICAgbWFwID0gJm1hcHRyYWNrX2VudHJ5KGxn
dCwgaGFuZGxlKTsKLSAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3MgJiAoR05U
TUFQX2RldmljZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgfHwKLSAgICAgICAg
ICAgICBtYXAtPmRvbWlkICE9IHJkLT5kb21haW5faWQgKQotICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIGlmICggbWZuX2VxKF9hY3RpdmVfZW50
cnkocmQtPmdyYW50X3RhYmxlLCBtYXAtPnJlZikuZnJhbWUsIG1mbikgKQot
ICAgICAgICAgICAga2luZCB8PSBtYXAtPmZsYWdzICYgR05UTUFQX3JlYWRv
bmx5ID8KLSAgICAgICAgICAgICAgICAgICAgTUFQS0lORF9SRUFEIDogTUFQ
S0lORF9XUklURTsKLSAgICB9Ci0KLSAgICByZXR1cm4ga2luZDsKLX0KK3Vu
aW9uIG1hcHRyYWNrX25vZGUgeworICAgIHN0cnVjdCB7CisgICAgICAgIC8q
IFJhZGl4IHRyZWUgc2xvdCBwb2ludGVycyB1c2UgdHdvIG9mIHRoZSBiaXRz
LiAqLworI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAorICAgICAgICB1
bnNpZ25lZCBsb25nICAgIDogMjsKKyNlbmRpZgorICAgICAgICB1bnNpZ25l
ZCBsb25nIHJkIDogQklUU19QRVJfTE9ORyAvIDIgLSAxOworICAgICAgICB1
bnNpZ25lZCBsb25nIHdyIDogQklUU19QRVJfTE9ORyAvIDIgLSAxOworICAg
IH0gY250OworICAgIHVuc2lnbmVkIGxvbmcgcmF3OworfTsKIAogLyoKICAq
IFJldHVybnMgMCBpZiBUTEIgZmx1c2ggLyBpbnZhbGlkYXRlIHJlcXVpcmVk
IGJ5IGNhbGxlci4KQEAgLTkzMSw3ICs4ODUsNiBAQCBtYXBfZ3JhbnRfcmVm
KAogICAgIHN0cnVjdCBncmFudF9tYXBwaW5nICptdDsKICAgICBncmFudF9l
bnRyeV9oZWFkZXJfdCAqc2hhaDsKICAgICB1aW50MTZfdCAqc3RhdHVzOwot
ICAgIGJvb2xfdCBuZWVkX2lvbW11OwogCiAgICAgbGVkID0gY3VycmVudDsK
ICAgICBsZCA9IGxlZC0+ZG9tYWluOwpAQCAtMTEzOSwzMSArMTA5Miw3NSBA
QCBtYXBfZ3JhbnRfcmVmKAogICAgICAgICBnb3RvIHVuZG9fb3V0OwogICAg
IH0KIAotICAgIG5lZWRfaW9tbXUgPSBnbnR0YWJfbmVlZF9pb21tdV9tYXBw
aW5nKGxkKTsKLSAgICBpZiAoIG5lZWRfaW9tbXUgKQorICAgIGlmICggZ250
dGFiX25lZWRfaW9tbXVfbWFwcGluZyhsZCkgKQogICAgIHsKKyAgICAgICAg
dW5pb24gbWFwdHJhY2tfbm9kZSBub2RlID0geworICAgICAgICAgICAgLmNu
dC5yZCA9ICEhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSksCisgICAg
ICAgICAgICAuY250LndyID0gIShvcC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9u
bHkpLAorICAgICAgICB9OworICAgICAgICBpbnQgZXJyOworICAgICAgICB2
b2lkICoqc2xvdCA9IE5VTEw7CiAgICAgICAgIHVuc2lnbmVkIGludCBraW5k
OwogCi0gICAgICAgIGRvdWJsZV9ndF9sb2NrKGxndCwgcmd0KTsKKyAgICAg
ICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOworCisgICAgICAgIGVyciA9IHJh
ZGl4X3RyZWVfaW5zZXJ0KCZsZ3QtPm1hcHRyYWNrX3RyZWUsIG1mbl94KGZy
YW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFkaXhf
dHJlZV91bG9uZ190b19wdHIobm9kZS5yYXcpKTsKKyAgICAgICAgaWYgKCBl
cnIgPT0gLUVFWElTVCApCisgICAgICAgIHsKKyAgICAgICAgICAgIHNsb3Qg
PSByYWRpeF90cmVlX2xvb2t1cF9zbG90KCZsZ3QtPm1hcHRyYWNrX3RyZWUs
IG1mbl94KGZyYW1lKSk7CisgICAgICAgICAgICBpZiAoIGxpa2VseShzbG90
KSApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgbm9kZS5yYXcg
PSByYWRpeF90cmVlX3B0cl90b191bG9uZygqc2xvdCk7CisgICAgICAgICAg
ICAgICAgZXJyID0gLUVCVVNZOworCisgICAgICAgICAgICAgICAgLyogVXBk
YXRlIG5vZGUgb25seSB3aGVuIHJlZmNvdW50IGRvZXNuJ3Qgb3ZlcmZsb3cu
ICovCisgICAgICAgICAgICAgICAgaWYgKCBvcC0+ZmxhZ3MgJiBHTlRNQVBf
cmVhZG9ubHkgPyArK25vZGUuY250LnJkCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiArK25vZGUuY250Lndy
ICkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJh
ZGl4X3RyZWVfcmVwbGFjZV9zbG90KHNsb3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVfdWxvbmdf
dG9fcHRyKG5vZGUucmF3KSk7CisgICAgICAgICAgICAgICAgICAgIGVyciA9
IDA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgIEFTU0VSVF9VTlJFQUNIQUJM
RSgpOworICAgICAgICB9CiAKICAgICAgICAgLyoKICAgICAgICAgICogV2Un
cmUgbm90IHRyYW5zbGF0ZWQsIHNvIHdlIGtub3cgdGhhdCBkZm5zIGFuZCBt
Zm5zIGFyZQogICAgICAgICAgKiB0aGUgc2FtZSB0aGluZ3MsIHNvIHRoZSBJ
T01NVSBlbnRyeSBpcyBhbHdheXMgMS10by0xLgogICAgICAgICAgKi8KLSAg
ICAgICAga2luZCA9IG1hcGtpbmQobGd0LCByZCwgZnJhbWUpOwotICAgICAg
ICBpZiAoICEob3AtPmZsYWdzICYgR05UTUFQX3JlYWRvbmx5KSAmJgotICAg
ICAgICAgICAgICEoa2luZCAmIE1BUEtJTkRfV1JJVEUpICkKKyAgICAgICAg
aWYgKCAhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSkgJiYgbm9kZS5j
bnQud3IgPT0gMSApCiAgICAgICAgICAgICBraW5kID0gSU9NTVVGX3JlYWRh
YmxlIHwgSU9NTVVGX3dyaXRhYmxlOwotICAgICAgICBlbHNlIGlmICggIWtp
bmQgKQorICAgICAgICBlbHNlIGlmICggKG9wLT5mbGFncyAmIEdOVE1BUF9y
ZWFkb25seSkgJiYKKyAgICAgICAgICAgICAgICAgIG5vZGUuY250LnJkID09
IDEgJiYgIW5vZGUuY250LndyICkKICAgICAgICAgICAgIGtpbmQgPSBJT01N
VUZfcmVhZGFibGU7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGtpbmQg
PSAwOwotICAgICAgICBpZiAoIGtpbmQgJiYgaW9tbXVfbWFwX3BhZ2UobGQs
IG1mbl94KGZyYW1lKSwgbWZuX3goZnJhbWUpLCBraW5kKSApCisgICAgICAg
IGlmICggZXJyIHx8CisgICAgICAgICAgICAgKGtpbmQgJiYgaW9tbXVfbWFw
X3BhZ2UobGQsIG1mbl94KGZyYW1lKSwgbWZuX3goZnJhbWUpLCBraW5kKSkg
KQogICAgICAgICB7Ci0gICAgICAgICAgICBkb3VibGVfZ3RfdW5sb2NrKGxn
dCwgcmd0KTsKKyAgICAgICAgICAgIGlmICggIWVyciApCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgaWYgKCBzbG90ICkKKyAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgIG9wLT5mbGFncyAmIEdOVE1B
UF9yZWFkb25seSA/IG5vZGUuY250LnJkLS0KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5jbnQud3It
LTsKKyAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJlZV9yZXBsYWNlX3Ns
b3Qoc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmFkaXhfdHJlZV91bG9uZ190b19wdHIobm9kZS5yYXcpKTsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgICAgICByYWRpeF90cmVlX2RlbGV0ZSgmbGd0LT5tYXB0
cmFja190cmVlLCBtZm5feChmcmFtZSkpOworICAgICAgICAgICAgfQorCiAg
ICAgICAgICAgICByYyA9IEdOVFNUX2dlbmVyYWxfZXJyb3I7Ci0gICAgICAg
ICAgICBnb3RvIHVuZG9fb3V0OwogICAgICAgICB9CisKKyAgICAgICAgZ3Jh
bnRfd3JpdGVfdW5sb2NrKGxndCk7CisKKyAgICAgICAgaWYgKCByYyAhPSBH
TlRTVF9va2F5ICkKKyAgICAgICAgICAgIGdvdG8gdW5kb19vdXQ7CiAgICAg
fQogCiAgICAgVFJBQ0VfMUQoVFJDX01FTV9QQUdFX0dSQU5UX01BUCwgb3At
PmRvbSk7CkBAIC0xMTcxLDEwICsxMTY4LDYgQEAgbWFwX2dyYW50X3JlZigK
ICAgICAvKgogICAgICAqIEFsbCBtYXB0cmFjayBlbnRyeSB1c2VycyBjaGVj
ayBtdC0+ZmxhZ3MgZmlyc3QgYmVmb3JlIHVzaW5nIHRoZQogICAgICAqIG90
aGVyIGZpZWxkcyBzbyBqdXN0IGVuc3VyZSB0aGUgZmxhZ3MgZmllbGQgaXMg
c3RvcmVkIGxhc3QuCi0gICAgICoKLSAgICAgKiBIb3dldmVyLCBpZiBnbnR0
YWJfbmVlZF9pb21tdV9tYXBwaW5nKCkgdGhlbiB0aGlzIHdvdWxkIHJhY2UK
LSAgICAgKiB3aXRoIGEgY29uY3VycmVudCBtYXBraW5kKCkgY2FsbCAob24g
YW4gdW5tYXAsIGZvciBleGFtcGxlKQotICAgICAqIGFuZCBhIGxvY2sgaXMg
cmVxdWlyZWQuCiAgICAgICovCiAgICAgbXQgPSAmbWFwdHJhY2tfZW50cnko
bGd0LCBoYW5kbGUpOwogICAgIG10LT5kb21pZCA9IG9wLT5kb207CkBAIC0x
MTgyLDkgKzExNzUsNiBAQCBtYXBfZ3JhbnRfcmVmKAogICAgIHNtcF93bWIo
KTsKICAgICB3cml0ZV9hdG9taWMoJm10LT5mbGFncywgb3AtPmZsYWdzKTsK
IAotICAgIGlmICggbmVlZF9pb21tdSApCi0gICAgICAgIGRvdWJsZV9ndF91
bmxvY2sobGd0LCByZ3QpOwotCiAgICAgb3AtPmRldl9idXNfYWRkciA9IG1m
bl90b19tYWRkcihmcmFtZSk7CiAgICAgb3AtPmhhbmRsZSAgICAgICA9IGhh
bmRsZTsKICAgICBvcC0+c3RhdHVzICAgICAgID0gR05UU1Rfb2theTsKQEAg
LTE0MTEsMTkgKzE0MDEsMzQgQEAgdW5tYXBfY29tbW9uKAogCiAgICAgaWYg
KCByYyA9PSBHTlRTVF9va2F5ICYmIGdudHRhYl9uZWVkX2lvbW11X21hcHBp
bmcobGQpICkKICAgICB7Ci0gICAgICAgIHVuc2lnbmVkIGludCBraW5kOwor
ICAgICAgICB2b2lkICoqc2xvdDsKKyAgICAgICAgdW5pb24gbWFwdHJhY2tf
bm9kZSBub2RlOwogICAgICAgICBpbnQgZXJyID0gMDsKIAotICAgICAgICBk
b3VibGVfZ3RfbG9jayhsZ3QsIHJndCk7CisgICAgICAgIGdyYW50X3dyaXRl
X2xvY2sobGd0KTsKKyAgICAgICAgc2xvdCA9IHJhZGl4X3RyZWVfbG9va3Vw
X3Nsb3QoJmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gob3AtPmZyYW1lKSk7
CisgICAgICAgIG5vZGUucmF3ID0gbGlrZWx5KHNsb3QpID8gcmFkaXhfdHJl
ZV9wdHJfdG9fdWxvbmcoKnNsb3QpIDogMDsKKworICAgICAgICAvKiBSZWZj
b3VudCBtdXN0IG5vdCB1bmRlcmZsb3cuICovCisgICAgICAgIGlmICggIShm
bGFncyAmIEdOVE1BUF9yZWFkb25seSA/IG5vZGUuY250LnJkLS0KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5jbnQu
d3ItLSkgKQorICAgICAgICAgICAgQlVHKCk7CiAKLSAgICAgICAga2luZCA9
IG1hcGtpbmQobGd0LCByZCwgb3AtPmZyYW1lKTsKLSAgICAgICAgaWYgKCAh
a2luZCApCisgICAgICAgIGlmICggIW5vZGUucmF3ICkKICAgICAgICAgICAg
IGVyciA9IGlvbW11X3VubWFwX3BhZ2UobGQsIG1mbl94KG9wLT5mcmFtZSkp
OwotICAgICAgICBlbHNlIGlmICggIShraW5kICYgTUFQS0lORF9XUklURSkg
KQorICAgICAgICBlbHNlIGlmICggIShmbGFncyAmIEdOVE1BUF9yZWFkb25s
eSkgJiYgIW5vZGUuY250LndyICkKICAgICAgICAgICAgIGVyciA9IGlvbW11
X21hcF9wYWdlKGxkLCBtZm5feChvcC0+ZnJhbWUpLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWZuX3gob3AtPmZyYW1lKSwgSU9NTVVG
X3JlYWRhYmxlKTsKIAotICAgICAgICBkb3VibGVfZ3RfdW5sb2NrKGxndCwg
cmd0KTsKKyAgICAgICAgaWYgKCBlcnIgKQorICAgICAgICAgICAgOworICAg
ICAgICBlbHNlIGlmICggIW5vZGUucmF3ICkKKyAgICAgICAgICAgIHJhZGl4
X3RyZWVfZGVsZXRlKCZsZ3QtPm1hcHRyYWNrX3RyZWUsIG1mbl94KG9wLT5m
cmFtZSkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICByYWRpeF90cmVl
X3JlcGxhY2Vfc2xvdChzbG90LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcmFkaXhfdHJlZV91bG9uZ190b19wdHIobm9kZS5yYXcp
KTsKKworICAgICAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKIAogICAg
ICAgICBpZiAoIGVyciApCiAgICAgICAgICAgICByYyA9IEdOVFNUX2dlbmVy
YWxfZXJyb3I7CkBAIC0xODU0LDYgKzE4NTksOCBAQCBncmFudF90YWJsZV9p
bml0KHN0cnVjdCBkb21haW4gKmQsIHN0cnVjCiAgICAgICAgIGd0LT5tYXB0
cmFjayA9IHZ6YWxsb2MoZ3QtPm1heF9tYXB0cmFja19mcmFtZXMgKiBzaXpl
b2YoKmd0LT5tYXB0cmFjaykpOwogICAgICAgICBpZiAoIGd0LT5tYXB0cmFj
ayA9PSBOVUxMICkKICAgICAgICAgICAgIGdvdG8gb3V0OworCisgICAgICAg
IHJhZGl4X3RyZWVfaW5pdCgmZ3QtPm1hcHRyYWNrX3RyZWUpOwogICAgIH0K
IAogICAgIC8qIFNoYXJlZCBncmFudCB0YWJsZS4gKi8KQEAgLTM2NDMsNiAr
MzY1MCw4IEBAIGludCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3Qg
ZG9tYWkKIAogICAgIGZvciAoIGhhbmRsZSA9IGd0LT5tYXB0cmFja19saW1p
dDsgaGFuZGxlOyApCiAgICAgeworICAgICAgICBtZm5fdCBtZm47CisKICAg
ICAgICAgLyoKICAgICAgICAgICogRGVhbCB3aXRoIGZ1bGwgcGFnZXMgc3Vj
aCB0aGF0IHRoZWlyIGZyZWVpbmcgKGluIHRoZSBib2R5IG9mIHRoZQogICAg
ICAgICAgKiBpZigpKSByZW1haW5zIHNpbXBsZS4KQEAgLTM3NDQsMTcgKzM3
NTMsMzEgQEAgaW50IGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKHN0cnVjdCBk
b21haQogICAgICAgICBpZiAoIGFjdC0+cGluID09IDAgKQogICAgICAgICAg
ICAgZ250dGFiX2NsZWFyX2ZsYWcocmQsIF9HVEZfcmVhZGluZywgc3RhdHVz
KTsKIAorICAgICAgICBtZm4gPSBhY3QtPmZyYW1lOworCiAgICAgICAgIGFj
dGl2ZV9lbnRyeV9yZWxlYXNlKGFjdCk7CiAgICAgICAgIGdyYW50X3JlYWRf
dW5sb2NrKHJndCk7CiAKICAgICAgICAgcmN1X3VubG9ja19kb21haW4ocmQp
OwogCiAgICAgICAgIG1hcC0+ZmxhZ3MgPSAwOworCisgICAgICAgIC8qCisg
ICAgICAgICAqIFRoaXMgaXMgZXhjZXNzaXZlIGluIHRoYXQgYSBzaW5nbGUg
c3VjaCBjYWxsIHdvdWxkIHN1ZmZpY2UgcGVyCisgICAgICAgICAqIG1hcHBl
ZCBNRk4gKG9yIG5vbmUgYXQgYWxsLCBpZiBubyBlbnRyeSB3YXMgZXZlciBp
bnNlcnRlZCkuIEJ1dCBpdAorICAgICAgICAgKiBzaG91bGQgYmUgdGhlIGNv
bW1vbiBjYXNlIGZvciBhbiBNRk4gdG8gYmUgbWFwcGVkIGp1c3Qgb25jZSwg
YW5kCisgICAgICAgICAqIHRoaXMgd2F5IHdlIGRvbid0IG5lZWQgdG8gZnVy
dGhlciBtYWludGFpbiB0aGUgY291bnRlcnMuIFdlIGFsc28KKyAgICAgICAg
ICogZG9uJ3Qgd2FudCB0byBsZWF2ZSBjbGVhbmluZyB1cCBvZiB0aGUgdHJl
ZSBhcyBhIHdob2xlIHRvIHRoZSBlbmQKKyAgICAgICAgICogb2YgdGhlIGZ1
bmN0aW9uLCBhcyB0aGlzIGNvdWxkIHRha2UgcXVpdGUgc29tZSB0aW1lLgor
ICAgICAgICAgKi8KKyAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUoJmd0LT5t
YXB0cmFja190cmVlLCBtZm5feChtZm4pKTsKICAgICB9CiAKICAgICBndC0+
bWFwdHJhY2tfbGltaXQgPSAwOwogICAgIEZSRUVfWEVOSEVBUF9QQUdFKGd0
LT5tYXB0cmFja1swXSk7CiAKKyAgICByYWRpeF90cmVlX2Rlc3Ryb3koJmd0
LT5tYXB0cmFja190cmVlLCBOVUxMKTsKKwogICAgIHJldHVybiAwOwogfQog
Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9yYWRpeC10cmVlLmgKKysrIGIveGVu
L2luY2x1ZGUveGVuL3JhZGl4LXRyZWUuaApAQCAtMTkwLDYgKzE5MCwyNSBA
QCBzdGF0aWMgaW5saW5lIGludCByYWRpeF90cmVlX3B0cl90b19pbnQoCiAg
ICAgcmV0dXJuIChpbnQpKChsb25nKXB0ciA+PiAyKTsKIH0KIAorLyoqCisg
KiByYWRpeF90cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfToKKyAq
CisgKiBTYW1lIGZvciB1bnNpZ25lZCBsb25nIHZhbHVlcy4gQmV3YXJlIHRo
b3VnaCB0aGF0IG9ubHkgQklUU19QRVJfTE9ORy0yCisgKiBiaXRzIGFyZSBh
Y3R1YWxseSB1c2FibGUgZm9yIHRoZSB2YWx1ZS4KKyAqLworc3RhdGljIGlu
bGluZSB2b2lkICpyYWRpeF90cmVlX3Vsb25nX3RvX3B0cih1bnNpZ25lZCBs
b25nIHZhbCkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHB0ciA9ICh2YWwgPDwg
MikgfCAweDI7CisgICAgQVNTRVJUKChwdHIgPj4gMikgPT0gdmFsKTsKKyAg
ICByZXR1cm4gKHZvaWQgKilwdHI7Cit9CisKK3N0YXRpYyBpbmxpbmUgdW5z
aWduZWQgbG9uZyByYWRpeF90cmVlX3B0cl90b191bG9uZyh2b2lkICpwdHIp
Cit7CisgICAgQVNTRVJUKCgodW5zaWduZWQgbG9uZylwdHIgJiAweDMpID09
IDB4Mik7CisgICAgcmV0dXJuICh1bnNpZ25lZCBsb25nKXB0ciA+PiAyOwor
fQorCiBpbnQgcmFkaXhfdHJlZV9pbnNlcnQoc3RydWN0IHJhZGl4X3RyZWVf
cm9vdCAqLCB1bnNpZ25lZCBsb25nLCB2b2lkICopOwogdm9pZCAqcmFkaXhf
dHJlZV9sb29rdXAoc3RydWN0IHJhZGl4X3RyZWVfcm9vdCAqLCB1bnNpZ25l
ZCBsb25nKTsKIHZvaWQgKipyYWRpeF90cmVlX2xvb2t1cF9zbG90KHN0cnVj
dCByYWRpeF90cmVlX3Jvb3QgKiwgdW5zaWduZWQgbG9uZyk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.12-1.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.12-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGFkZCBwcmVlbXB0aW9uIGNoZWNrIHRvIGdudHRhYl9yZWxl
YXNlX21hcHBpbmdzKCkKCkEgZ3Vlc3QgbWF5IGRpZSB3aXRoIG1hbnkgZ3Jh
bnQgbWFwcGluZ3Mgc3RpbGwgaW4gcGxhY2UsIG9yIHNpbXBseSB3aXRoCmEg
bGFyZ2UgbWFwdHJhY2sgdGFibGUuIEl0ZXJhdGluZyB0aHJvdWdoIHRoaXMg
bWF5IHRha2UgbW9yZSB0aW1lIHRoYW4KaXMgcmVhc29uYWJsZSB3aXRob3V0
IGludGVybWVkaWF0ZSBwcmVlbXB0aW9uICh0byBydW4gc29mdGlycXMgYW5k
CnBlcmhhcHMgdGhlIHNjaGVkdWxlcikuCgpNb3ZlIHRoZSBpbnZvY2F0aW9u
IG9mIHRoZSBmdW5jdGlvbiB0byB0aGUgc2VjdGlvbiB3aGVyZSBvdGhlcgpy
ZXN0YXJ0YWJsZSBmdW5jdGlvbnMgZ2V0IGludm9rZWQsIGFuZCBoYXZlIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgY2hlY2sKZm9yIHByZWVtcHRpb24gZXZlcnkg
b25jZSBpbiBhIHdoaWxlLiBIYXZlIGl0IGl0ZXJhdGUgdGhlIHRhYmxlCmJh
Y2t3YXJkcywgc3VjaCB0aGF0IGRlY3JlYXNpbmcgdGhlIG1hcHRyYWNrIGxp
bWl0IGlzIGFsbCBpdCB0YWtlcyB0bwpjb252ZXkgcmVzdGFydCBpbmZvcm1h
dGlvbi4KCkluIGRvbWFpbl90ZWFyZG93bigpIGludHJvZHVjZSBQUk9HX25v
bmUgc3VjaCB0aGF0IGluc2VydGluZyBhdCB0aGUKZnJvbnQgd2lsbCBiZSBl
YXNpZXIgZ29pbmcgZm9yd2FyZC4KClRoaXMgaXMgcGFydCBvZiBDVkUtMjAy
MS0yODY5OCAvIFhTQS0zODAuCgpSZXBvcnRlZC1ieTogQW5kcmV3IENvb3Bl
ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
SnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9j
b21tb24vZG9tYWluLmMKKysrIGIveGVuL2NvbW1vbi9kb21haW4uYwpAQCAt
NzI0LDEzICs3MjQsMTUgQEAgaW50IGRvbWFpbl9raWxsKHN0cnVjdCBkb21h
aW4gKmQpCiAgICAgICAgICAgICByZXR1cm4gZG9tYWluX2tpbGwoZCk7CiAg
ICAgICAgIGQtPmlzX2R5aW5nID0gRE9NRFlJTkdfZHlpbmc7CiAgICAgICAg
IGFyZ29fZGVzdHJveShkKTsKLSAgICAgICAgZ250dGFiX3JlbGVhc2VfbWFw
cGluZ3MoZCk7CiAgICAgICAgIHRtZW1fZGVzdHJveShkLT50bWVtX2NsaWVu
dCk7CiAgICAgICAgIHZudW1hX2Rlc3Ryb3koZC0+dm51bWEpOwogICAgICAg
ICBkb21haW5fc2V0X291dHN0YW5kaW5nX3BhZ2VzKGQsIDApOwogICAgICAg
ICBkLT50bWVtX2NsaWVudCA9IE5VTEw7CiAgICAgICAgIC8qIGZhbGx0aHJv
dWdoICovCiAgICAgY2FzZSBET01EWUlOR19keWluZzoKKyAgICAgICAgcmMg
PSBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhkKTsKKyAgICAgICAgaWYgKCBy
YyApCisgICAgICAgICAgICBicmVhazsKICAgICAgICAgcmMgPSBldnRjaG5f
ZGVzdHJveShkKTsKICAgICAgICAgaWYgKCByYyApCiAgICAgICAgICAgICBi
cmVhazsKLS0tIGEveGVuL2NvbW1vbi9ncmFudF90YWJsZS5jCisrKyBiL3hl
bi9jb21tb24vZ3JhbnRfdGFibGUuYwpAQCAtNjIsNyArNjIsMTMgQEAgc3Ry
dWN0IGdyYW50X3RhYmxlIHsKICAgICB1bnNpZ25lZCBpbnQgICAgICAgICAg
bnJfZ3JhbnRfZnJhbWVzOwogICAgIC8qIE51bWJlciBvZiBncmFudCBzdGF0
dXMgZnJhbWVzIHNoYXJlZCB3aXRoIGd1ZXN0IChmb3IgdmVyc2lvbiAyKSAq
LwogICAgIHVuc2lnbmVkIGludCAgICAgICAgICBucl9zdGF0dXNfZnJhbWVz
OwotICAgIC8qIE51bWJlciBvZiBhdmFpbGFibGUgbWFwdHJhY2sgZW50cmll
cy4gKi8KKyAgICAvKgorICAgICAqIE51bWJlciBvZiBhdmFpbGFibGUgbWFw
dHJhY2sgZW50cmllcy4gIEZvciBjbGVhbnVwIHB1cnBvc2VzIGl0IGlzCisg
ICAgICogaW1wb3J0YW50IHRvIHJlYWxpemUgdGhhdCB0aGlzIGZpZWxkIGFu
ZCBAbWFwdHJhY2sgZnVydGhlciBkb3duIHdpbGwKKyAgICAgKiBvbmx5IGV2
ZXIgYmUgYWNjZXNzZWQgYnkgdGhlIGxvY2FsIGRvbWFpbi4gIFRodXMgaXQg
aXMgb2theSB0byBjbGVhbgorICAgICAqIHVwIGVhcmx5LCBhbmQgdG8gc2hy
aW5rIHRoZSBsaW1pdCBmb3IgdGhlIHB1cnBvc2Ugb2YgdHJhY2tpbmcgY2xl
YW51cAorICAgICAqIHByb2dyZXNzLgorICAgICAqLwogICAgIHVuc2lnbmVk
IGludCAgICAgICAgICBtYXB0cmFja19saW1pdDsKICAgICAvKiBTaGFyZWQg
Z3JhbnQgdGFibGUgKHNlZSBpbmNsdWRlL3B1YmxpYy9ncmFudF90YWJsZS5o
KS4gKi8KICAgICB1bmlvbiB7CkBAIC0zNjA0LDkgKzM2MTAsNyBAQCBkb19n
cmFudF90YWJsZV9vcCgKICNpbmNsdWRlICJjb21wYXQvZ3JhbnRfdGFibGUu
YyIKICNlbmRpZgogCi12b2lkCi1nbnR0YWJfcmVsZWFzZV9tYXBwaW5ncygK
LSAgICBzdHJ1Y3QgZG9tYWluICpkKQoraW50IGdudHRhYl9yZWxlYXNlX21h
cHBpbmdzKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAgc3RydWN0IGdyYW50
X3RhYmxlICAgKmd0ID0gZC0+Z3JhbnRfdGFibGUsICpyZ3Q7CiAgICAgc3Ry
dWN0IGdyYW50X21hcHBpbmcgKm1hcDsKQEAgLTM2MjAsOCArMzYyNCwzMiBA
QCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncygKIAogICAgIEJVR19PTighZC0+
aXNfZHlpbmcpOwogCi0gICAgZm9yICggaGFuZGxlID0gMDsgaGFuZGxlIDwg
Z3QtPm1hcHRyYWNrX2xpbWl0OyBoYW5kbGUrKyApCisgICAgaWYgKCAhZ3Qg
fHwgIWd0LT5tYXB0cmFjayApCisgICAgICAgIHJldHVybiAwOworCisgICAg
Zm9yICggaGFuZGxlID0gZ3QtPm1hcHRyYWNrX2xpbWl0OyBoYW5kbGU7ICkK
ICAgICB7CisgICAgICAgIC8qCisgICAgICAgICAqIERlYWwgd2l0aCBmdWxs
IHBhZ2VzIHN1Y2ggdGhhdCB0aGVpciBmcmVlaW5nIChpbiB0aGUgYm9keSBv
ZiB0aGUKKyAgICAgICAgICogaWYoKSkgcmVtYWlucyBzaW1wbGUuCisgICAg
ICAgICAqLworICAgICAgICBpZiAoIGhhbmRsZSA8IGd0LT5tYXB0cmFja19s
aW1pdCAmJiAhKGhhbmRsZSAlIE1BUFRSQUNLX1BFUl9QQUdFKSApCisgICAg
ICAgIHsKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBDaGFuZ2lu
ZyBtYXB0cmFja19saW1pdCBhbHRlcnMgbnJfbWFwdHJhY2tfZnJhbWVzKCkn
ZXMgcmV0dXJuCisgICAgICAgICAgICAgKiB2YWx1ZS4gRnJlZSB0aGUgdGhl
biBleGNlc3MgdHJhaWxpbmcgcGFnZSByaWdodCBoZXJlLCByYXRoZXIKKyAg
ICAgICAgICAgICAqIHRoYW4gbGVhdmluZyBpdCB0byBncmFudF90YWJsZV9k
ZXN0cm95KCkgKGFuZCBpbiB0dXJuIHJlcXVpcmluZworICAgICAgICAgICAg
ICogdG8gbGVhdmUgZ3QtPm1hcHRyYWNrX2xpbWl0IHVuYWx0ZXJlZCkuCisg
ICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGd0LT5tYXB0cmFja19saW1p
dCA9IGhhbmRsZTsKKyAgICAgICAgICAgIEZSRUVfWEVOSEVBUF9QQUdFKGd0
LT5tYXB0cmFja1tucl9tYXB0cmFja19mcmFtZXMoZ3QpXSk7CisKKyAgICAg
ICAgICAgIGlmICggaHlwZXJjYWxsX3ByZWVtcHRfY2hlY2soKSApCisgICAg
ICAgICAgICAgICAgcmV0dXJuIC1FUkVTVEFSVDsKKyAgICAgICAgfQorCisg
ICAgICAgIC0taGFuZGxlOworCiAgICAgICAgIG1hcCA9ICZtYXB0cmFja19l
bnRyeShndCwgaGFuZGxlKTsKICAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3Mg
JiAoR05UTUFQX2RldmljZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgKQogICAg
ICAgICAgICAgY29udGludWU7CkBAIC0zNzA5LDYgKzM3MzcsMTEgQEAgZ250
dGFiX3JlbGVhc2VfbWFwcGluZ3MoCiAKICAgICAgICAgbWFwLT5mbGFncyA9
IDA7CiAgICAgfQorCisgICAgZ3QtPm1hcHRyYWNrX2xpbWl0ID0gMDsKKyAg
ICBGUkVFX1hFTkhFQVBfUEFHRShndC0+bWFwdHJhY2tbMF0pOworCisgICAg
cmV0dXJuIDA7CiB9CiAKIHZvaWQgZ3JhbnRfdGFibGVfd2Fybl9hY3RpdmVf
Z3JhbnRzKHN0cnVjdCBkb21haW4gKmQpCkBAIC0zNzcxLDggKzM4MDQsNyBA
QCBncmFudF90YWJsZV9kZXN0cm95KAogICAgICAgICBmcmVlX3hlbmhlYXBf
cGFnZSh0LT5zaGFyZWRfcmF3W2ldKTsKICAgICB4ZnJlZSh0LT5zaGFyZWRf
cmF3KTsKIAotICAgIGZvciAoIGkgPSAwOyBpIDwgbnJfbWFwdHJhY2tfZnJh
bWVzKHQpOyBpKysgKQotICAgICAgICBmcmVlX3hlbmhlYXBfcGFnZSh0LT5t
YXB0cmFja1tpXSk7CisgICAgQVNTRVJUKCF0LT5tYXB0cmFja19saW1pdCk7
CiAgICAgdmZyZWUodC0+bWFwdHJhY2spOwogCiAgICAgZm9yICggaSA9IDA7
IGkgPCBucl9hY3RpdmVfZ3JhbnRfZnJhbWVzKHQpOyBpKysgKQotLS0gYS94
ZW4vaW5jbHVkZS94ZW4vZ3JhbnRfdGFibGUuaAorKysgYi94ZW4vaW5jbHVk
ZS94ZW4vZ3JhbnRfdGFibGUuaApAQCAtNDYsOSArNDYsNyBAQCB2b2lkIGdy
YW50X3RhYmxlX2luaXRfdmNwdShzdHJ1Y3QgdmNwdSAqCiB2b2lkIGdyYW50
X3RhYmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKTsK
IAogLyogRG9tYWluIGRlYXRoIHJlbGVhc2Ugb2YgZ3JhbnRlZCBtYXBwaW5n
cyBvZiBvdGhlciBkb21haW5zJyBtZW1vcnkuICovCi12b2lkCi1nbnR0YWJf
cmVsZWFzZV9tYXBwaW5ncygKLSAgICBzdHJ1Y3QgZG9tYWluICpkKTsKK2lu
dCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWluICpkKTsK
IAogaW50IG1lbV9zaGFyaW5nX2dyZWZfdG9fZ2ZuKHN0cnVjdCBncmFudF90
YWJsZSAqZ3QsIGdyYW50X3JlZl90IHJlZiwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBnZm5fdCAqZ2ZuLCB1aW50MTZfdCAqc3RhdHVzKTsK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.12-2.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.12-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IHJlcGxhY2UgbWFwa2luZCgpCgptYXBraW5kKCkgZG9lc24n
dCBzY2FsZSB2ZXJ5IHdlbGwgd2l0aCBsYXJnZXIgbWFwdHJhY2sgZW50cnkg
Y291bnRzLAp1c2luZyBhIGJydXRlIGZvcmNlIGxpbmVhciBzZWFyY2ggdGhy
b3VnaCBhbGwgZW50cmllcywgd2l0aCB0aGUgb25seQpvcHRpb24gb2YgYW4g
ZWFybHkgbG9vcCBleGl0IGlmIGEgbWF0Y2hpbmcgd3JpdGFibGUgZW50cnkg
d2FzIGZvdW5kLgpJbnRyb2R1Y2UgYSByYWRpeCB0cmVlIGFsb25nc2lkZSB0
aGUgbWFpbiBtYXB0cmFjayB0YWJsZSwgdGh1cwphbGxvd2luZyBtdWNoIGZh
c3RlciBNRk4tYmFzZWQgbG9va3VwLiBUbyBhdm9pZCB0aGUgbmVlZCB0byBh
Y3R1YWxseQphbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGluZGl2aWR1YWwgbm9k
ZXMsIGVuY29kZSB0aGUgdHdvIGNvdW50ZXJzIGluIHRoZQpub2RlIHBvaW50
ZXJzIHRoZW1zZWx2ZXMsIHRodXMgbGltaXRpbmcgdGhlIG51bWJlciBvZiBw
ZXJtaXR0ZWQKc2ltdWx0YW5lb3VzIHIvbyBhbmQgci93IG1hcHBpbmdzIG9m
IHRoZSBzYW1lIE1GTiB0byAywrPCuS0xICg2NC1iaXQpIC8KMsK54oG1LTEg
KDMyLWJpdCkgZWFjaC4KClRvIGF2b2lkIGVuZm9yY2luZyBhbiB1bm5lY2Vz
c2FyaWx5IGxvdyBib3VuZCBvbiB0aGUgbnVtYmVyIG9mCnNpbXVsdGFuZW91
cyBtYXBwaW5ncyBvZiBhIHNpbmdsZSBNRk4sIGludHJvZHVjZQpyYWRpeF90
cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfSBwYXJhbGxlbGluZwpy
YWRpeF90cmVlX3tpbnRfdG9fcHRyLHB0cl90b19pbnR9LgoKQXMgYSBjb25z
ZXF1ZW5jZSBsb2NraW5nIGNoYW5nZXMgYXJlIGFsc28gYXBwbGljYWJsZTog
V2l0aCB0aGVyZSBubwpsb25nZXIgYmVpbmcgYW55IGluc3BlY3Rpb24gb2Yg
dGhlIHJlbW90ZSBkb21haW4ncyBhY3RpdmUgZW50cmllcywKdGhlcmUncyBh
bHNvIG5vIG5lZWQgYW55bW9yZSB0byBob2xkIHRoZSByZW1vdGUgZG9tYWlu
J3MgZ3JhbnQgdGFibGUKbG9jay4gQW5kIHNpbmNlIHdlJ3JlIG5vIGxvbmdl
ciBpdGVyYXRpbmcgb3ZlciB0aGUgbG9jYWwgZG9tYWluJ3MgbWFwCnRyYWNr
IHRhYmxlLCB0aGUgbG9jayBpbiBtYXBfZ3JhbnRfcmVmKCkgY2FuIGFsc28g
YmUgZHJvcHBlZCBiZWZvcmUgdGhlCm5ldyBtYXB0cmFjayBlbnRyeSBhY3R1
YWxseSBnZXRzIHBvcHVsYXRlZC4KCkFzIGEgbmljZSBzaWRlIGVmZmVjdCB0
aGlzIGFsc28gcmVkdWNlcyB0aGUgbnVtYmVyIG9mIElPTU1VIG9wZXJhdGlv
bnMKaW4gdW5tYXBfY29tbW9uKCk6IFByZXZpb3VzbHkgd2Ugd291bGQgaGF2
ZSAiZXN0YWJsaXNoZWQiIGEgcmVhZGFibGUKbWFwcGluZyB3aGVuZXZlciB3
ZSBkaWRuJ3QgZmluZCBhIHdyaXRhYmxlIGVudHJ5IGFueW1vcmUgKHlldCwg
b2YKY291cnNlLCBhdCBsZWFzdCBvbmUgcmVhZGFibGUgb25lKS4gQnV0IHdl
IG9ubHkgbmVlZCB0byBkbyB0aGlzIGlmIHdlCmFjdHVhbGx5IGRyb3BwZWQg
dGhlIGxhc3Qgd3JpdGFibGUgZW50cnksIG5vdCBpZiB0aGVyZSB3ZXJlIG5v
bmUgYWxyZWFkeQpiZWZvcmUuCgpUaGlzIGlzIHBhcnQgb2YgQ1ZFLTIwMjEt
Mjg2OTggLyBYU0EtMzgwLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2gg
PGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxs
IDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRf
dGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTM2
LDYgKzM2LDcgQEAKICNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNpbmNsdWRl
IDx4ZW4vcGFnaW5nLmg+CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4K
KyNpbmNsdWRlIDx4ZW4vcmFkaXgtdHJlZS5oPgogI2luY2x1ZGUgPHhlbi92
bWFwLmg+CiAjaW5jbHVkZSA8eHNtL3hzbS5oPgogI2luY2x1ZGUgPGFzbS9m
bHVzaHRsYi5oPgpAQCAtODAsOCArODEsMTMgQEAgc3RydWN0IGdyYW50X3Rh
YmxlIHsKICAgICBncmFudF9zdGF0dXNfdCAgICAgICAqKnN0YXR1czsKICAg
ICAvKiBBY3RpdmUgZ3JhbnQgdGFibGUuICovCiAgICAgc3RydWN0IGFjdGl2
ZV9ncmFudF9lbnRyeSAqKmFjdGl2ZTsKLSAgICAvKiBNYXBwaW5nIHRyYWNr
aW5nIHRhYmxlIHBlciB2Y3B1LiAqLworICAgIC8qIEhhbmRsZS1pbmRleGVk
IHRyYWNraW5nIHRhYmxlIG9mIG1hcHBpbmdzLiAqLwogICAgIHN0cnVjdCBn
cmFudF9tYXBwaW5nICoqbWFwdHJhY2s7CisgICAgLyoKKyAgICAgKiBNRk4t
aW5kZXhlZCB0cmFja2luZyB0cmVlIG9mIG1hcHBpbmdzLCBpZiBuZWVkZWQu
ICBOb3RlIHRoYXQgdGhpcyBpcworICAgICAqIHByb3RlY3RlZCBieSBAbG9j
aywgbm90IEBtYXB0cmFja19sb2NrLgorICAgICAqLworICAgIHN0cnVjdCBy
YWRpeF90cmVlX3Jvb3QgbWFwdHJhY2tfdHJlZTsKIAogICAgIC8qIERvbWFp
biB0byB3aGljaCB0aGlzIHN0cnVjdCBncmFudF90YWJsZSBiZWxvbmdzLiAq
LwogICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmRvbWFpbjsKQEAgLTQ0NSwz
NCArNDUxLDYgQEAgc3RhdGljIGludCBnZXRfcGFnZWRfZnJhbWUodW5zaWdu
ZWQgbG9uZwogICAgIHJldHVybiBHTlRTVF9va2F5OwogfQogCi1zdGF0aWMg
aW5saW5lIHZvaWQKLWRvdWJsZV9ndF9sb2NrKHN0cnVjdCBncmFudF90YWJs
ZSAqbGd0LCBzdHJ1Y3QgZ3JhbnRfdGFibGUgKnJndCkKLXsKLSAgICAvKgot
ICAgICAqIFNlZSBtYXBraW5kKCkgZm9yIHdoeSB0aGUgd3JpdGUgbG9jayBp
cyBhbHNvIHJlcXVpcmVkIGZvciB0aGUKLSAgICAgKiByZW1vdGUgZG9tYWlu
LgotICAgICAqLwotICAgIGlmICggbGd0IDwgcmd0ICkKLSAgICB7Ci0gICAg
ICAgIGdyYW50X3dyaXRlX2xvY2sobGd0KTsKLSAgICAgICAgZ3JhbnRfd3Jp
dGVfbG9jayhyZ3QpOwotICAgIH0KLSAgICBlbHNlCi0gICAgewotICAgICAg
ICBpZiAoIGxndCAhPSByZ3QgKQotICAgICAgICAgICAgZ3JhbnRfd3JpdGVf
bG9jayhyZ3QpOwotICAgICAgICBncmFudF93cml0ZV9sb2NrKGxndCk7Ci0g
ICAgfQotfQotCi1zdGF0aWMgaW5saW5lIHZvaWQKLWRvdWJsZV9ndF91bmxv
Y2soc3RydWN0IGdyYW50X3RhYmxlICpsZ3QsIHN0cnVjdCBncmFudF90YWJs
ZSAqcmd0KQotewotICAgIGdyYW50X3dyaXRlX3VubG9jayhsZ3QpOwotICAg
IGlmICggbGd0ICE9IHJndCApCi0gICAgICAgIGdyYW50X3dyaXRlX3VubG9j
ayhyZ3QpOwotfQotCiAjZGVmaW5lIElOVkFMSURfTUFQVFJBQ0tfSEFORExF
IFVJTlRfTUFYCiAKIHN0YXRpYyBpbmxpbmUgZ3JhbnRfaGFuZGxlX3QKQEAg
LTg5NSw0MSArODczLDE3IEBAIHN0YXRpYyBzdHJ1Y3QgYWN0aXZlX2dyYW50
X2VudHJ5ICpncmFudF8KICAgICByZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsK
IH0KIAotI2RlZmluZSBNQVBLSU5EX1JFQUQgMQotI2RlZmluZSBNQVBLSU5E
X1dSSVRFIDIKLXN0YXRpYyB1bnNpZ25lZCBpbnQgbWFwa2luZCgKLSAgICBz
dHJ1Y3QgZ3JhbnRfdGFibGUgKmxndCwgY29uc3Qgc3RydWN0IGRvbWFpbiAq
cmQsIG1mbl90IG1mbikKLXsKLSAgICBzdHJ1Y3QgZ3JhbnRfbWFwcGluZyAq
bWFwOwotICAgIGdyYW50X2hhbmRsZV90IGhhbmRsZSwgbGltaXQgPSBsZ3Qt
Pm1hcHRyYWNrX2xpbWl0OwotICAgIHVuc2lnbmVkIGludCBraW5kID0gMDsK
LQotICAgIC8qCi0gICAgICogTXVzdCBoYXZlIHRoZSBsb2NhbCBkb21haW4n
cyBncmFudCB0YWJsZSB3cml0ZSBsb2NrIHdoZW4KLSAgICAgKiBpdGVyYXRp
bmcgb3ZlciBpdHMgbWFwdHJhY2sgZW50cmllcy4KLSAgICAgKi8KLSAgICBB
U1NFUlQocGVyY3B1X3J3X2lzX3dyaXRlX2xvY2tlZCgmbGd0LT5sb2NrKSk7
Ci0gICAgLyoKLSAgICAgKiBNdXN0IGhhdmUgdGhlIHJlbW90ZSBkb21haW4n
cyBncmFudCB0YWJsZSB3cml0ZSBsb2NrIHdoaWxlCi0gICAgICogY291bnRp
bmcgaXRzIGFjdGl2ZSBlbnRyaWVzLgotICAgICAqLwotICAgIEFTU0VSVChw
ZXJjcHVfcndfaXNfd3JpdGVfbG9ja2VkKCZyZC0+Z3JhbnRfdGFibGUtPmxv
Y2spKTsKLQotICAgIHNtcF9ybWIoKTsKLQotICAgIGZvciAoIGhhbmRsZSA9
IDA7ICEoa2luZCAmIE1BUEtJTkRfV1JJVEUpICYmIGhhbmRsZSA8IGxpbWl0
OyBoYW5kbGUrKyApCi0gICAgewotICAgICAgICBtYXAgPSAmbWFwdHJhY2tf
ZW50cnkobGd0LCBoYW5kbGUpOwotICAgICAgICBpZiAoICEobWFwLT5mbGFn
cyAmIChHTlRNQVBfZGV2aWNlX21hcHxHTlRNQVBfaG9zdF9tYXApKSB8fAot
ICAgICAgICAgICAgIG1hcC0+ZG9taWQgIT0gcmQtPmRvbWFpbl9pZCApCi0g
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKCBtZm5fZXEoX2Fj
dGl2ZV9lbnRyeShyZC0+Z3JhbnRfdGFibGUsIG1hcC0+cmVmKS5tZm4sIG1m
bikgKQotICAgICAgICAgICAga2luZCB8PSBtYXAtPmZsYWdzICYgR05UTUFQ
X3JlYWRvbmx5ID8KLSAgICAgICAgICAgICAgICAgICAgTUFQS0lORF9SRUFE
IDogTUFQS0lORF9XUklURTsKLSAgICB9Ci0KLSAgICByZXR1cm4ga2luZDsK
LX0KK3VuaW9uIG1hcHRyYWNrX25vZGUgeworICAgIHN0cnVjdCB7CisgICAg
ICAgIC8qIFJhZGl4IHRyZWUgc2xvdCBwb2ludGVycyB1c2UgdHdvIG9mIHRo
ZSBiaXRzLiAqLworI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAorICAg
ICAgICB1bnNpZ25lZCBsb25nICAgIDogMjsKKyNlbmRpZgorICAgICAgICB1
bnNpZ25lZCBsb25nIHJkIDogQklUU19QRVJfTE9ORyAvIDIgLSAxOworICAg
ICAgICB1bnNpZ25lZCBsb25nIHdyIDogQklUU19QRVJfTE9ORyAvIDIgLSAx
OworICAgIH0gY250OworICAgIHVuc2lnbmVkIGxvbmcgcmF3OworfTsKIAog
c3RhdGljIHZvaWQKIG1hcF9ncmFudF9yZWYoCkBAIC05NDgsNyArOTAyLDYg
QEAgbWFwX2dyYW50X3JlZigKICAgICBzdHJ1Y3QgZ3JhbnRfbWFwcGluZyAq
bXQ7CiAgICAgZ3JhbnRfZW50cnlfaGVhZGVyX3QgKnNoYWg7CiAgICAgdWlu
dDE2X3QgKnN0YXR1czsKLSAgICBib29sX3QgbmVlZF9pb21tdTsKIAogICAg
IGxlZCA9IGN1cnJlbnQ7CiAgICAgbGQgPSBsZWQtPmRvbWFpbjsKQEAgLTEx
NTYsMzEgKzExMDksNzUgQEAgbWFwX2dyYW50X3JlZigKICAgICAgICAgZ290
byB1bmRvX291dDsKICAgICB9CiAKLSAgICBuZWVkX2lvbW11ID0gZ250dGFi
X25lZWRfaW9tbXVfbWFwcGluZyhsZCk7Ci0gICAgaWYgKCBuZWVkX2lvbW11
ICkKKyAgICBpZiAoIGdudHRhYl9uZWVkX2lvbW11X21hcHBpbmcobGQpICkK
ICAgICB7CisgICAgICAgIHVuaW9uIG1hcHRyYWNrX25vZGUgbm9kZSA9IHsK
KyAgICAgICAgICAgIC5jbnQucmQgPSAhIShvcC0+ZmxhZ3MgJiBHTlRNQVBf
cmVhZG9ubHkpLAorICAgICAgICAgICAgLmNudC53ciA9ICEob3AtPmZsYWdz
ICYgR05UTUFQX3JlYWRvbmx5KSwKKyAgICAgICAgfTsKKyAgICAgICAgaW50
IGVycjsKKyAgICAgICAgdm9pZCAqKnNsb3QgPSBOVUxMOwogICAgICAgICB1
bnNpZ25lZCBpbnQga2luZDsKIAotICAgICAgICBkb3VibGVfZ3RfbG9jayhs
Z3QsIHJndCk7CisgICAgICAgIGdyYW50X3dyaXRlX2xvY2sobGd0KTsKKwor
ICAgICAgICBlcnIgPSByYWRpeF90cmVlX2luc2VydCgmbGd0LT5tYXB0cmFj
a190cmVlLCBtZm5feChtZm4pLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByYWRpeF90cmVlX3Vsb25nX3RvX3B0cihub2RlLnJhdykpOwor
ICAgICAgICBpZiAoIGVyciA9PSAtRUVYSVNUICkKKyAgICAgICAgeworICAg
ICAgICAgICAgc2xvdCA9IHJhZGl4X3RyZWVfbG9va3VwX3Nsb3QoJmxndC0+
bWFwdHJhY2tfdHJlZSwgbWZuX3gobWZuKSk7CisgICAgICAgICAgICBpZiAo
IGxpa2VseShzbG90KSApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgbm9kZS5yYXcgPSByYWRpeF90cmVlX3B0cl90b191bG9uZygqc2xvdCk7
CisgICAgICAgICAgICAgICAgZXJyID0gLUVCVVNZOworCisgICAgICAgICAg
ICAgICAgLyogVXBkYXRlIG5vZGUgb25seSB3aGVuIHJlZmNvdW50IGRvZXNu
J3Qgb3ZlcmZsb3cuICovCisgICAgICAgICAgICAgICAgaWYgKCBvcC0+Zmxh
Z3MgJiBHTlRNQVBfcmVhZG9ubHkgPyArK25vZGUuY250LnJkCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAr
K25vZGUuY250LndyICkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgIHJhZGl4X3RyZWVfcmVwbGFjZV9zbG90KHNsb3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhZGl4
X3RyZWVfdWxvbmdfdG9fcHRyKG5vZGUucmF3KSk7CisgICAgICAgICAgICAg
ICAgICAgIGVyciA9IDA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIEFTU0VS
VF9VTlJFQUNIQUJMRSgpOworICAgICAgICB9CiAKICAgICAgICAgLyoKICAg
ICAgICAgICogV2UncmUgbm90IHRyYW5zbGF0ZWQsIHNvIHdlIGtub3cgdGhh
dCBkZm5zIGFuZCBtZm5zIGFyZQogICAgICAgICAgKiB0aGUgc2FtZSB0aGlu
Z3MsIHNvIHRoZSBJT01NVSBlbnRyeSBpcyBhbHdheXMgMS10by0xLgogICAg
ICAgICAgKi8KLSAgICAgICAga2luZCA9IG1hcGtpbmQobGd0LCByZCwgbWZu
KTsKLSAgICAgICAgaWYgKCAhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25s
eSkgJiYKLSAgICAgICAgICAgICAhKGtpbmQgJiBNQVBLSU5EX1dSSVRFKSAp
CisgICAgICAgIGlmICggIShvcC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkp
ICYmIG5vZGUuY250LndyID09IDEgKQogICAgICAgICAgICAga2luZCA9IElP
TU1VRl9yZWFkYWJsZSB8IElPTU1VRl93cml0YWJsZTsKLSAgICAgICAgZWxz
ZSBpZiAoICFraW5kICkKKyAgICAgICAgZWxzZSBpZiAoIChvcC0+ZmxhZ3Mg
JiBHTlRNQVBfcmVhZG9ubHkpICYmCisgICAgICAgICAgICAgICAgICBub2Rl
LmNudC5yZCA9PSAxICYmICFub2RlLmNudC53ciApCiAgICAgICAgICAgICBr
aW5kID0gSU9NTVVGX3JlYWRhYmxlOwogICAgICAgICBlbHNlCiAgICAgICAg
ICAgICBraW5kID0gMDsKLSAgICAgICAgaWYgKCBraW5kICYmIGlvbW11X2xl
Z2FjeV9tYXAobGQsIF9kZm4obWZuX3gobWZuKSksIG1mbiwgMCwga2luZCkg
KQorICAgICAgICBpZiAoIGVyciB8fAorICAgICAgICAgICAgIChraW5kICYm
IGlvbW11X2xlZ2FjeV9tYXAobGQsIF9kZm4obWZuX3gobWZuKSksIG1mbiwg
MCwga2luZCkpICkKICAgICAgICAgewotICAgICAgICAgICAgZG91YmxlX2d0
X3VubG9jayhsZ3QsIHJndCk7CisgICAgICAgICAgICBpZiAoICFlcnIgKQor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICggc2xvdCApCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBvcC0+Zmxh
Z3MgJiBHTlRNQVBfcmVhZG9ubHkgPyBub2RlLmNudC5yZC0tCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5v
ZGUuY250LndyLS07CisgICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVf
cmVwbGFjZV9zbG90KHNsb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVfdWxvbmdfdG9fcHRyKG5v
ZGUucmF3KSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUo
JmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gobWZuKSk7CisgICAgICAgICAg
ICB9CisKICAgICAgICAgICAgIHJjID0gR05UU1RfZ2VuZXJhbF9lcnJvcjsK
LSAgICAgICAgICAgIGdvdG8gdW5kb19vdXQ7CiAgICAgICAgIH0KKworICAg
ICAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKKworICAgICAgICBpZiAo
IHJjICE9IEdOVFNUX29rYXkgKQorICAgICAgICAgICAgZ290byB1bmRvX291
dDsKICAgICB9CiAKICAgICBUUkFDRV8xRChUUkNfTUVNX1BBR0VfR1JBTlRf
TUFQLCBvcC0+ZG9tKTsKQEAgLTExODgsMTAgKzExODUsNiBAQCBtYXBfZ3Jh
bnRfcmVmKAogICAgIC8qCiAgICAgICogQWxsIG1hcHRyYWNrIGVudHJ5IHVz
ZXJzIGNoZWNrIG10LT5mbGFncyBmaXJzdCBiZWZvcmUgdXNpbmcgdGhlCiAg
ICAgICogb3RoZXIgZmllbGRzIHNvIGp1c3QgZW5zdXJlIHRoZSBmbGFncyBm
aWVsZCBpcyBzdG9yZWQgbGFzdC4KLSAgICAgKgotICAgICAqIEhvd2V2ZXIs
IGlmIGdudHRhYl9uZWVkX2lvbW11X21hcHBpbmcoKSB0aGVuIHRoaXMgd291
bGQgcmFjZQotICAgICAqIHdpdGggYSBjb25jdXJyZW50IG1hcGtpbmQoKSBj
YWxsIChvbiBhbiB1bm1hcCwgZm9yIGV4YW1wbGUpCi0gICAgICogYW5kIGEg
bG9jayBpcyByZXF1aXJlZC4KICAgICAgKi8KICAgICBtdCA9ICZtYXB0cmFj
a19lbnRyeShsZ3QsIGhhbmRsZSk7CiAgICAgbXQtPmRvbWlkID0gb3AtPmRv
bTsKQEAgLTExOTksOSArMTE5Miw2IEBAIG1hcF9ncmFudF9yZWYoCiAgICAg
c21wX3dtYigpOwogICAgIHdyaXRlX2F0b21pYygmbXQtPmZsYWdzLCBvcC0+
ZmxhZ3MpOwogCi0gICAgaWYgKCBuZWVkX2lvbW11ICkKLSAgICAgICAgZG91
YmxlX2d0X3VubG9jayhsZ3QsIHJndCk7Ci0KICAgICBvcC0+ZGV2X2J1c19h
ZGRyID0gbWZuX3RvX21hZGRyKG1mbik7CiAgICAgb3AtPmhhbmRsZSAgICAg
ICA9IGhhbmRsZTsKICAgICBvcC0+c3RhdHVzICAgICAgID0gR05UU1Rfb2th
eTsKQEAgLTE0MTQsMTkgKzE0MDQsMzQgQEAgdW5tYXBfY29tbW9uKAogCiAg
ICAgaWYgKCByYyA9PSBHTlRTVF9va2F5ICYmIGdudHRhYl9uZWVkX2lvbW11
X21hcHBpbmcobGQpICkKICAgICB7Ci0gICAgICAgIHVuc2lnbmVkIGludCBr
aW5kOworICAgICAgICB2b2lkICoqc2xvdDsKKyAgICAgICAgdW5pb24gbWFw
dHJhY2tfbm9kZSBub2RlOwogICAgICAgICBpbnQgZXJyID0gMDsKIAotICAg
ICAgICBkb3VibGVfZ3RfbG9jayhsZ3QsIHJndCk7CisgICAgICAgIGdyYW50
X3dyaXRlX2xvY2sobGd0KTsKKyAgICAgICAgc2xvdCA9IHJhZGl4X3RyZWVf
bG9va3VwX3Nsb3QoJmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gob3AtPm1m
bikpOworICAgICAgICBub2RlLnJhdyA9IGxpa2VseShzbG90KSA/IHJhZGl4
X3RyZWVfcHRyX3RvX3Vsb25nKCpzbG90KSA6IDA7CisKKyAgICAgICAgLyog
UmVmY291bnQgbXVzdCBub3QgdW5kZXJmbG93LiAqLworICAgICAgICBpZiAo
ICEoZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkgPyBub2RlLmNudC5yZC0tCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vZGUu
Y250LndyLS0pICkKKyAgICAgICAgICAgIEJVRygpOwogCi0gICAgICAgIGtp
bmQgPSBtYXBraW5kKGxndCwgcmQsIG9wLT5tZm4pOwotICAgICAgICBpZiAo
ICFraW5kICkKKyAgICAgICAgaWYgKCAhbm9kZS5yYXcgKQogICAgICAgICAg
ICAgZXJyID0gaW9tbXVfbGVnYWN5X3VubWFwKGxkLCBfZGZuKG1mbl94KG9w
LT5tZm4pKSwgMCk7Ci0gICAgICAgIGVsc2UgaWYgKCAhKGtpbmQgJiBNQVBL
SU5EX1dSSVRFKSApCisgICAgICAgIGVsc2UgaWYgKCAhKGZsYWdzICYgR05U
TUFQX3JlYWRvbmx5KSAmJiAhbm9kZS5jbnQud3IgKQogICAgICAgICAgICAg
ZXJyID0gaW9tbXVfbGVnYWN5X21hcChsZCwgX2RmbihtZm5feChvcC0+bWZu
KSksIG9wLT5tZm4sIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIElPTU1VRl9yZWFkYWJsZSk7CiAKLSAgICAgICAgZG91YmxlX2d0
X3VubG9jayhsZ3QsIHJndCk7CisgICAgICAgIGlmICggZXJyICkKKyAgICAg
ICAgICAgIDsKKyAgICAgICAgZWxzZSBpZiAoICFub2RlLnJhdyApCisgICAg
ICAgICAgICByYWRpeF90cmVlX2RlbGV0ZSgmbGd0LT5tYXB0cmFja190cmVl
LCBtZm5feChvcC0+bWZuKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IHJhZGl4X3RyZWVfcmVwbGFjZV9zbG90KHNsb3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICByYWRpeF90cmVlX3Vsb25nX3RvX3B0
cihub2RlLnJhdykpOworCisgICAgICAgIGdyYW50X3dyaXRlX3VubG9jayhs
Z3QpOwogCiAgICAgICAgIGlmICggZXJyICkKICAgICAgICAgICAgIHJjID0g
R05UU1RfZ2VuZXJhbF9lcnJvcjsKQEAgLTE4NzQsNiArMTg3OSw4IEBAIGlu
dCBncmFudF90YWJsZV9pbml0KHN0cnVjdCBkb21haW4gKmQsIGkKICAgICAg
ICAgZ3QtPm1hcHRyYWNrID0gdnphbGxvYyhndC0+bWF4X21hcHRyYWNrX2Zy
YW1lcyAqIHNpemVvZigqZ3QtPm1hcHRyYWNrKSk7CiAgICAgICAgIGlmICgg
Z3QtPm1hcHRyYWNrID09IE5VTEwgKQogICAgICAgICAgICAgZ290byBvdXQ7
CisKKyAgICAgICAgcmFkaXhfdHJlZV9pbml0KCZndC0+bWFwdHJhY2tfdHJl
ZSk7CiAgICAgfQogCiAgICAgLyogU2hhcmVkIGdyYW50IHRhYmxlLiAqLwpA
QCAtMzYyOSw2ICszNjM2LDggQEAgaW50IGdudHRhYl9yZWxlYXNlX21hcHBp
bmdzKHN0cnVjdCBkb21haQogCiAgICAgZm9yICggaGFuZGxlID0gZ3QtPm1h
cHRyYWNrX2xpbWl0OyBoYW5kbGU7ICkKICAgICB7CisgICAgICAgIG1mbl90
IG1mbjsKKwogICAgICAgICAvKgogICAgICAgICAgKiBEZWFsIHdpdGggZnVs
bCBwYWdlcyBzdWNoIHRoYXQgdGhlaXIgZnJlZWluZyAoaW4gdGhlIGJvZHkg
b2YgdGhlCiAgICAgICAgICAqIGlmKCkpIHJlbWFpbnMgc2ltcGxlLgpAQCAt
MzczMCwxNyArMzczOSwzMSBAQCBpbnQgZ250dGFiX3JlbGVhc2VfbWFwcGlu
Z3Moc3RydWN0IGRvbWFpCiAgICAgICAgIGlmICggYWN0LT5waW4gPT0gMCAp
CiAgICAgICAgICAgICBnbnR0YWJfY2xlYXJfZmxhZyhyZCwgX0dURl9yZWFk
aW5nLCBzdGF0dXMpOwogCisgICAgICAgIG1mbiA9IGFjdC0+bWZuOworCiAg
ICAgICAgIGFjdGl2ZV9lbnRyeV9yZWxlYXNlKGFjdCk7CiAgICAgICAgIGdy
YW50X3JlYWRfdW5sb2NrKHJndCk7CiAKICAgICAgICAgcmN1X3VubG9ja19k
b21haW4ocmQpOwogCiAgICAgICAgIG1hcC0+ZmxhZ3MgPSAwOworCisgICAg
ICAgIC8qCisgICAgICAgICAqIFRoaXMgaXMgZXhjZXNzaXZlIGluIHRoYXQg
YSBzaW5nbGUgc3VjaCBjYWxsIHdvdWxkIHN1ZmZpY2UgcGVyCisgICAgICAg
ICAqIG1hcHBlZCBNRk4gKG9yIG5vbmUgYXQgYWxsLCBpZiBubyBlbnRyeSB3
YXMgZXZlciBpbnNlcnRlZCkuIEJ1dCBpdAorICAgICAgICAgKiBzaG91bGQg
YmUgdGhlIGNvbW1vbiBjYXNlIGZvciBhbiBNRk4gdG8gYmUgbWFwcGVkIGp1
c3Qgb25jZSwgYW5kCisgICAgICAgICAqIHRoaXMgd2F5IHdlIGRvbid0IG5l
ZWQgdG8gZnVydGhlciBtYWludGFpbiB0aGUgY291bnRlcnMuIFdlIGFsc28K
KyAgICAgICAgICogZG9uJ3Qgd2FudCB0byBsZWF2ZSBjbGVhbmluZyB1cCBv
ZiB0aGUgdHJlZSBhcyBhIHdob2xlIHRvIHRoZSBlbmQKKyAgICAgICAgICog
b2YgdGhlIGZ1bmN0aW9uLCBhcyB0aGlzIGNvdWxkIHRha2UgcXVpdGUgc29t
ZSB0aW1lLgorICAgICAgICAgKi8KKyAgICAgICAgcmFkaXhfdHJlZV9kZWxl
dGUoJmd0LT5tYXB0cmFja190cmVlLCBtZm5feChtZm4pKTsKICAgICB9CiAK
ICAgICBndC0+bWFwdHJhY2tfbGltaXQgPSAwOwogICAgIEZSRUVfWEVOSEVB
UF9QQUdFKGd0LT5tYXB0cmFja1swXSk7CiAKKyAgICByYWRpeF90cmVlX2Rl
c3Ryb3koJmd0LT5tYXB0cmFja190cmVlLCBOVUxMKTsKKwogICAgIHJldHVy
biAwOwogfQogCi0tLSBhL3hlbi9pbmNsdWRlL3hlbi9yYWRpeC10cmVlLmgK
KysrIGIveGVuL2luY2x1ZGUveGVuL3JhZGl4LXRyZWUuaApAQCAtMTkwLDYg
KzE5MCwyNSBAQCBzdGF0aWMgaW5saW5lIGludCByYWRpeF90cmVlX3B0cl90
b19pbnQoCiAgICAgcmV0dXJuIChpbnQpKChsb25nKXB0ciA+PiAyKTsKIH0K
IAorLyoqCisgKiByYWRpeF90cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vs
b25nfToKKyAqCisgKiBTYW1lIGZvciB1bnNpZ25lZCBsb25nIHZhbHVlcy4g
QmV3YXJlIHRob3VnaCB0aGF0IG9ubHkgQklUU19QRVJfTE9ORy0yCisgKiBi
aXRzIGFyZSBhY3R1YWxseSB1c2FibGUgZm9yIHRoZSB2YWx1ZS4KKyAqLwor
c3RhdGljIGlubGluZSB2b2lkICpyYWRpeF90cmVlX3Vsb25nX3RvX3B0cih1
bnNpZ25lZCBsb25nIHZhbCkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHB0ciA9
ICh2YWwgPDwgMikgfCAweDI7CisgICAgQVNTRVJUKChwdHIgPj4gMikgPT0g
dmFsKTsKKyAgICByZXR1cm4gKHZvaWQgKilwdHI7Cit9CisKK3N0YXRpYyBp
bmxpbmUgdW5zaWduZWQgbG9uZyByYWRpeF90cmVlX3B0cl90b191bG9uZyh2
b2lkICpwdHIpCit7CisgICAgQVNTRVJUKCgodW5zaWduZWQgbG9uZylwdHIg
JiAweDMpID09IDB4Mik7CisgICAgcmV0dXJuICh1bnNpZ25lZCBsb25nKXB0
ciA+PiAyOworfQorCiBpbnQgcmFkaXhfdHJlZV9pbnNlcnQoc3RydWN0IHJh
ZGl4X3RyZWVfcm9vdCAqLCB1bnNpZ25lZCBsb25nLCB2b2lkICopOwogdm9p
ZCAqcmFkaXhfdHJlZV9sb29rdXAoc3RydWN0IHJhZGl4X3RyZWVfcm9vdCAq
LCB1bnNpZ25lZCBsb25nKTsKIHZvaWQgKipyYWRpeF90cmVlX2xvb2t1cF9z
bG90KHN0cnVjdCByYWRpeF90cmVlX3Jvb3QgKiwgdW5zaWduZWQgbG9uZyk7
Cg==

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.13-1.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.13-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGFkZCBwcmVlbXB0aW9uIGNoZWNrIHRvIGdudHRhYl9yZWxl
YXNlX21hcHBpbmdzKCkKCkEgZ3Vlc3QgbWF5IGRpZSB3aXRoIG1hbnkgZ3Jh
bnQgbWFwcGluZ3Mgc3RpbGwgaW4gcGxhY2UsIG9yIHNpbXBseSB3aXRoCmEg
bGFyZ2UgbWFwdHJhY2sgdGFibGUuIEl0ZXJhdGluZyB0aHJvdWdoIHRoaXMg
bWF5IHRha2UgbW9yZSB0aW1lIHRoYW4KaXMgcmVhc29uYWJsZSB3aXRob3V0
IGludGVybWVkaWF0ZSBwcmVlbXB0aW9uICh0byBydW4gc29mdGlycXMgYW5k
CnBlcmhhcHMgdGhlIHNjaGVkdWxlcikuCgpNb3ZlIHRoZSBpbnZvY2F0aW9u
IG9mIHRoZSBmdW5jdGlvbiB0byB0aGUgc2VjdGlvbiB3aGVyZSBvdGhlcgpy
ZXN0YXJ0YWJsZSBmdW5jdGlvbnMgZ2V0IGludm9rZWQsIGFuZCBoYXZlIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgY2hlY2sKZm9yIHByZWVtcHRpb24gZXZlcnkg
b25jZSBpbiBhIHdoaWxlLiBIYXZlIGl0IGl0ZXJhdGUgdGhlIHRhYmxlCmJh
Y2t3YXJkcywgc3VjaCB0aGF0IGRlY3JlYXNpbmcgdGhlIG1hcHRyYWNrIGxp
bWl0IGlzIGFsbCBpdCB0YWtlcyB0bwpjb252ZXkgcmVzdGFydCBpbmZvcm1h
dGlvbi4KCkluIGRvbWFpbl90ZWFyZG93bigpIGludHJvZHVjZSBQUk9HX25v
bmUgc3VjaCB0aGF0IGluc2VydGluZyBhdCB0aGUKZnJvbnQgd2lsbCBiZSBl
YXNpZXIgZ29pbmcgZm9yd2FyZC4KClRoaXMgaXMgcGFydCBvZiBDVkUtMjAy
MS0yODY5OCAvIFhTQS0zODAuCgpSZXBvcnRlZC1ieTogQW5kcmV3IENvb3Bl
ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
SnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9j
b21tb24vZG9tYWluLmMKKysrIGIveGVuL2NvbW1vbi9kb21haW4uYwpAQCAt
Nzc2LDExICs3NzYsMTMgQEAgaW50IGRvbWFpbl9raWxsKHN0cnVjdCBkb21h
aW4gKmQpCiAgICAgICAgICAgICByZXR1cm4gZG9tYWluX2tpbGwoZCk7CiAg
ICAgICAgIGQtPmlzX2R5aW5nID0gRE9NRFlJTkdfZHlpbmc7CiAgICAgICAg
IGFyZ29fZGVzdHJveShkKTsKLSAgICAgICAgZ250dGFiX3JlbGVhc2VfbWFw
cGluZ3MoZCk7CiAgICAgICAgIHZudW1hX2Rlc3Ryb3koZC0+dm51bWEpOwog
ICAgICAgICBkb21haW5fc2V0X291dHN0YW5kaW5nX3BhZ2VzKGQsIDApOwog
ICAgICAgICAvKiBmYWxsdGhyb3VnaCAqLwogICAgIGNhc2UgRE9NRFlJTkdf
ZHlpbmc6CisgICAgICAgIHJjID0gZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Mo
ZCk7CisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIHJjID0gZXZ0Y2huX2Rlc3Ryb3koZCk7CiAgICAgICAgIGlmICgg
cmMgKQogICAgICAgICAgICAgYnJlYWs7Ci0tLSBhL3hlbi9jb21tb24vZ3Jh
bnRfdGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAg
LTYzLDcgKzYzLDEzIEBAIHN0cnVjdCBncmFudF90YWJsZSB7CiAgICAgdW5z
aWduZWQgaW50ICAgICAgICAgIG5yX2dyYW50X2ZyYW1lczsKICAgICAvKiBO
dW1iZXIgb2YgZ3JhbnQgc3RhdHVzIGZyYW1lcyBzaGFyZWQgd2l0aCBndWVz
dCAoZm9yIHZlcnNpb24gMikgKi8KICAgICB1bnNpZ25lZCBpbnQgICAgICAg
ICAgbnJfc3RhdHVzX2ZyYW1lczsKLSAgICAvKiBOdW1iZXIgb2YgYXZhaWxh
YmxlIG1hcHRyYWNrIGVudHJpZXMuICovCisgICAgLyoKKyAgICAgKiBOdW1i
ZXIgb2YgYXZhaWxhYmxlIG1hcHRyYWNrIGVudHJpZXMuICBGb3IgY2xlYW51
cCBwdXJwb3NlcyBpdCBpcworICAgICAqIGltcG9ydGFudCB0byByZWFsaXpl
IHRoYXQgdGhpcyBmaWVsZCBhbmQgQG1hcHRyYWNrIGZ1cnRoZXIgZG93biB3
aWxsCisgICAgICogb25seSBldmVyIGJlIGFjY2Vzc2VkIGJ5IHRoZSBsb2Nh
bCBkb21haW4uICBUaHVzIGl0IGlzIG9rYXkgdG8gY2xlYW4KKyAgICAgKiB1
cCBlYXJseSwgYW5kIHRvIHNocmluayB0aGUgbGltaXQgZm9yIHRoZSBwdXJw
b3NlIG9mIHRyYWNraW5nIGNsZWFudXAKKyAgICAgKiBwcm9ncmVzcy4KKyAg
ICAgKi8KICAgICB1bnNpZ25lZCBpbnQgICAgICAgICAgbWFwdHJhY2tfbGlt
aXQ7CiAgICAgLyogU2hhcmVkIGdyYW50IHRhYmxlIChzZWUgaW5jbHVkZS9w
dWJsaWMvZ3JhbnRfdGFibGUuaCkuICovCiAgICAgdW5pb24gewpAQCAtMzY3
NSw5ICszNjgxLDcgQEAgZG9fZ3JhbnRfdGFibGVfb3AoCiAjaW5jbHVkZSAi
Y29tcGF0L2dyYW50X3RhYmxlLmMiCiAjZW5kaWYKIAotdm9pZAotZ250dGFi
X3JlbGVhc2VfbWFwcGluZ3MoCi0gICAgc3RydWN0IGRvbWFpbiAqZCkKK2lu
dCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWluICpkKQog
ewogICAgIHN0cnVjdCBncmFudF90YWJsZSAgICpndCA9IGQtPmdyYW50X3Rh
YmxlLCAqcmd0OwogICAgIHN0cnVjdCBncmFudF9tYXBwaW5nICptYXA7CkBA
IC0zNjkxLDEwICszNjk1LDM0IEBAIGdudHRhYl9yZWxlYXNlX21hcHBpbmdz
KAogCiAgICAgQlVHX09OKCFkLT5pc19keWluZyk7CiAKLSAgICBmb3IgKCBo
YW5kbGUgPSAwOyBoYW5kbGUgPCBndC0+bWFwdHJhY2tfbGltaXQ7IGhhbmRs
ZSsrICkKKyAgICBpZiAoICFndCB8fCAhZ3QtPm1hcHRyYWNrICkKKyAgICAg
ICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCBoYW5kbGUgPSBndC0+bWFwdHJh
Y2tfbGltaXQ7IGhhbmRsZTsgKQogICAgIHsKICAgICAgICAgdW5zaWduZWQg
aW50IGNsZWFyX2ZsYWdzID0gMDsKIAorICAgICAgICAvKgorICAgICAgICAg
KiBEZWFsIHdpdGggZnVsbCBwYWdlcyBzdWNoIHRoYXQgdGhlaXIgZnJlZWlu
ZyAoaW4gdGhlIGJvZHkgb2YgdGhlCisgICAgICAgICAqIGlmKCkpIHJlbWFp
bnMgc2ltcGxlLgorICAgICAgICAgKi8KKyAgICAgICAgaWYgKCBoYW5kbGUg
PCBndC0+bWFwdHJhY2tfbGltaXQgJiYgIShoYW5kbGUgJSBNQVBUUkFDS19Q
RVJfUEFHRSkgKQorICAgICAgICB7CisgICAgICAgICAgICAvKgorICAgICAg
ICAgICAgICogQ2hhbmdpbmcgbWFwdHJhY2tfbGltaXQgYWx0ZXJzIG5yX21h
cHRyYWNrX2ZyYW1lcygpJ2VzIHJldHVybgorICAgICAgICAgICAgICogdmFs
dWUuIEZyZWUgdGhlIHRoZW4gZXhjZXNzIHRyYWlsaW5nIHBhZ2UgcmlnaHQg
aGVyZSwgcmF0aGVyCisgICAgICAgICAgICAgKiB0aGFuIGxlYXZpbmcgaXQg
dG8gZ3JhbnRfdGFibGVfZGVzdHJveSgpIChhbmQgaW4gdHVybiByZXF1aXJp
bmcKKyAgICAgICAgICAgICAqIHRvIGxlYXZlIGd0LT5tYXB0cmFja19saW1p
dCB1bmFsdGVyZWQpLgorICAgICAgICAgICAgICovCisgICAgICAgICAgICBn
dC0+bWFwdHJhY2tfbGltaXQgPSBoYW5kbGU7CisgICAgICAgICAgICBGUkVF
X1hFTkhFQVBfUEFHRShndC0+bWFwdHJhY2tbbnJfbWFwdHJhY2tfZnJhbWVz
KGd0KV0pOworCisgICAgICAgICAgICBpZiAoIGh5cGVyY2FsbF9wcmVlbXB0
X2NoZWNrKCkgKQorICAgICAgICAgICAgICAgIHJldHVybiAtRVJFU1RBUlQ7
CisgICAgICAgIH0KKworICAgICAgICAtLWhhbmRsZTsKKwogICAgICAgICBt
YXAgPSAmbWFwdHJhY2tfZW50cnkoZ3QsIGhhbmRsZSk7CiAgICAgICAgIGlm
ICggIShtYXAtPmZsYWdzICYgKEdOVE1BUF9kZXZpY2VfbWFwfEdOVE1BUF9o
b3N0X21hcCkpICkKICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMzc4NSw2
ICszODEzLDExIEBAIGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKAogCiAgICAg
ICAgIG1hcC0+ZmxhZ3MgPSAwOwogICAgIH0KKworICAgIGd0LT5tYXB0cmFj
a19saW1pdCA9IDA7CisgICAgRlJFRV9YRU5IRUFQX1BBR0UoZ3QtPm1hcHRy
YWNrWzBdKTsKKworICAgIHJldHVybiAwOwogfQogCiB2b2lkIGdyYW50X3Rh
YmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKQpAQCAt
Mzg0OCw4ICszODgxLDcgQEAgZ3JhbnRfdGFibGVfZGVzdHJveSgKICAgICAg
ICAgZnJlZV94ZW5oZWFwX3BhZ2UodC0+c2hhcmVkX3Jhd1tpXSk7CiAgICAg
eGZyZWUodC0+c2hhcmVkX3Jhdyk7CiAKLSAgICBmb3IgKCBpID0gMDsgaSA8
IG5yX21hcHRyYWNrX2ZyYW1lcyh0KTsgaSsrICkKLSAgICAgICAgZnJlZV94
ZW5oZWFwX3BhZ2UodC0+bWFwdHJhY2tbaV0pOworICAgIEFTU0VSVCghdC0+
bWFwdHJhY2tfbGltaXQpOwogICAgIHZmcmVlKHQtPm1hcHRyYWNrKTsKIAog
ICAgIGZvciAoIGkgPSAwOyBpIDwgbnJfYWN0aXZlX2dyYW50X2ZyYW1lcyh0
KTsgaSsrICkKLS0tIGEveGVuL2luY2x1ZGUveGVuL2dyYW50X3RhYmxlLmgK
KysrIGIveGVuL2luY2x1ZGUveGVuL2dyYW50X3RhYmxlLmgKQEAgLTQ3LDkg
KzQ3LDcgQEAgdm9pZCBncmFudF90YWJsZV9pbml0X3ZjcHUoc3RydWN0IHZj
cHUgKgogdm9pZCBncmFudF90YWJsZV93YXJuX2FjdGl2ZV9ncmFudHMoc3Ry
dWN0IGRvbWFpbiAqZCk7CiAKIC8qIERvbWFpbiBkZWF0aCByZWxlYXNlIG9m
IGdyYW50ZWQgbWFwcGluZ3Mgb2Ygb3RoZXIgZG9tYWlucycgbWVtb3J5LiAq
Lwotdm9pZAotZ250dGFiX3JlbGVhc2VfbWFwcGluZ3MoCi0gICAgc3RydWN0
IGRvbWFpbiAqZCk7CitpbnQgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Moc3Ry
dWN0IGRvbWFpbiAqZCk7CiAKIGludCBtZW1fc2hhcmluZ19ncmVmX3RvX2dm
bihzdHJ1Y3QgZ3JhbnRfdGFibGUgKmd0LCBncmFudF9yZWZfdCByZWYsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3QgKmdmbiwgdWludDE2
X3QgKnN0YXR1cyk7CkBAIC03OCw3ICs3Niw3IEBAIHN0YXRpYyBpbmxpbmUg
dm9pZCBncmFudF90YWJsZV9pbml0X3ZjcHUKIAogc3RhdGljIGlubGluZSB2
b2lkIGdyYW50X3RhYmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9t
YWluICpkKSB7fQogCi1zdGF0aWMgaW5saW5lIHZvaWQgZ250dGFiX3JlbGVh
c2VfbWFwcGluZ3Moc3RydWN0IGRvbWFpbiAqZCkge30KK3N0YXRpYyBpbmxp
bmUgaW50IGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKHN0cnVjdCBkb21haW4g
KmQpIHsgcmV0dXJuIDA7IH0KIAogc3RhdGljIGlubGluZSBpbnQgbWVtX3No
YXJpbmdfZ3JlZl90b19nZm4oc3RydWN0IGdyYW50X3RhYmxlICpndCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYW50
X3JlZl90IHJlZiwK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.13-2.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.13-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IHJlcGxhY2UgbWFwa2luZCgpCgptYXBraW5kKCkgZG9lc24n
dCBzY2FsZSB2ZXJ5IHdlbGwgd2l0aCBsYXJnZXIgbWFwdHJhY2sgZW50cnkg
Y291bnRzLAp1c2luZyBhIGJydXRlIGZvcmNlIGxpbmVhciBzZWFyY2ggdGhy
b3VnaCBhbGwgZW50cmllcywgd2l0aCB0aGUgb25seQpvcHRpb24gb2YgYW4g
ZWFybHkgbG9vcCBleGl0IGlmIGEgbWF0Y2hpbmcgd3JpdGFibGUgZW50cnkg
d2FzIGZvdW5kLgpJbnRyb2R1Y2UgYSByYWRpeCB0cmVlIGFsb25nc2lkZSB0
aGUgbWFpbiBtYXB0cmFjayB0YWJsZSwgdGh1cwphbGxvd2luZyBtdWNoIGZh
c3RlciBNRk4tYmFzZWQgbG9va3VwLiBUbyBhdm9pZCB0aGUgbmVlZCB0byBh
Y3R1YWxseQphbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGluZGl2aWR1YWwgbm9k
ZXMsIGVuY29kZSB0aGUgdHdvIGNvdW50ZXJzIGluIHRoZQpub2RlIHBvaW50
ZXJzIHRoZW1zZWx2ZXMsIHRodXMgbGltaXRpbmcgdGhlIG51bWJlciBvZiBw
ZXJtaXR0ZWQKc2ltdWx0YW5lb3VzIHIvbyBhbmQgci93IG1hcHBpbmdzIG9m
IHRoZSBzYW1lIE1GTiB0byAywrPCuS0xICg2NC1iaXQpIC8KMsK54oG1LTEg
KDMyLWJpdCkgZWFjaC4KClRvIGF2b2lkIGVuZm9yY2luZyBhbiB1bm5lY2Vz
c2FyaWx5IGxvdyBib3VuZCBvbiB0aGUgbnVtYmVyIG9mCnNpbXVsdGFuZW91
cyBtYXBwaW5ncyBvZiBhIHNpbmdsZSBNRk4sIGludHJvZHVjZQpyYWRpeF90
cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfSBwYXJhbGxlbGluZwpy
YWRpeF90cmVlX3tpbnRfdG9fcHRyLHB0cl90b19pbnR9LgoKQXMgYSBjb25z
ZXF1ZW5jZSBsb2NraW5nIGNoYW5nZXMgYXJlIGFsc28gYXBwbGljYWJsZTog
V2l0aCB0aGVyZSBubwpsb25nZXIgYmVpbmcgYW55IGluc3BlY3Rpb24gb2Yg
dGhlIHJlbW90ZSBkb21haW4ncyBhY3RpdmUgZW50cmllcywKdGhlcmUncyBh
bHNvIG5vIG5lZWQgYW55bW9yZSB0byBob2xkIHRoZSByZW1vdGUgZG9tYWlu
J3MgZ3JhbnQgdGFibGUKbG9jay4gQW5kIHNpbmNlIHdlJ3JlIG5vIGxvbmdl
ciBpdGVyYXRpbmcgb3ZlciB0aGUgbG9jYWwgZG9tYWluJ3MgbWFwCnRyYWNr
IHRhYmxlLCB0aGUgbG9jayBpbiBtYXBfZ3JhbnRfcmVmKCkgY2FuIGFsc28g
YmUgZHJvcHBlZCBiZWZvcmUgdGhlCm5ldyBtYXB0cmFjayBlbnRyeSBhY3R1
YWxseSBnZXRzIHBvcHVsYXRlZC4KCkFzIGEgbmljZSBzaWRlIGVmZmVjdCB0
aGlzIGFsc28gcmVkdWNlcyB0aGUgbnVtYmVyIG9mIElPTU1VIG9wZXJhdGlv
bnMKaW4gdW5tYXBfY29tbW9uKCk6IFByZXZpb3VzbHkgd2Ugd291bGQgaGF2
ZSAiZXN0YWJsaXNoZWQiIGEgcmVhZGFibGUKbWFwcGluZyB3aGVuZXZlciB3
ZSBkaWRuJ3QgZmluZCBhIHdyaXRhYmxlIGVudHJ5IGFueW1vcmUgKHlldCwg
b2YKY291cnNlLCBhdCBsZWFzdCBvbmUgcmVhZGFibGUgb25lKS4gQnV0IHdl
IG9ubHkgbmVlZCB0byBkbyB0aGlzIGlmIHdlCmFjdHVhbGx5IGRyb3BwZWQg
dGhlIGxhc3Qgd3JpdGFibGUgZW50cnksIG5vdCBpZiB0aGVyZSB3ZXJlIG5v
bmUgYWxyZWFkeQpiZWZvcmUuCgpUaGlzIGlzIHBhcnQgb2YgQ1ZFLTIwMjEt
Mjg2OTggLyBYU0EtMzgwLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2gg
PGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxs
IDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRf
dGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTM2
LDYgKzM2LDcgQEAKICNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNpbmNsdWRl
IDx4ZW4vcGFnaW5nLmg+CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4K
KyNpbmNsdWRlIDx4ZW4vcmFkaXgtdHJlZS5oPgogI2luY2x1ZGUgPHhlbi92
bWFwLmg+CiAjaW5jbHVkZSA8eGVuL25vc3BlYy5oPgogI2luY2x1ZGUgPHhz
bS94c20uaD4KQEAgLTgxLDggKzgyLDEzIEBAIHN0cnVjdCBncmFudF90YWJs
ZSB7CiAgICAgZ3JhbnRfc3RhdHVzX3QgICAgICAgKipzdGF0dXM7CiAgICAg
LyogQWN0aXZlIGdyYW50IHRhYmxlLiAqLwogICAgIHN0cnVjdCBhY3RpdmVf
Z3JhbnRfZW50cnkgKiphY3RpdmU7Ci0gICAgLyogTWFwcGluZyB0cmFja2lu
ZyB0YWJsZSBwZXIgdmNwdS4gKi8KKyAgICAvKiBIYW5kbGUtaW5kZXhlZCB0
cmFja2luZyB0YWJsZSBvZiBtYXBwaW5ncy4gKi8KICAgICBzdHJ1Y3QgZ3Jh
bnRfbWFwcGluZyAqKm1hcHRyYWNrOworICAgIC8qCisgICAgICogTUZOLWlu
ZGV4ZWQgdHJhY2tpbmcgdHJlZSBvZiBtYXBwaW5ncywgaWYgbmVlZGVkLiAg
Tm90ZSB0aGF0IHRoaXMgaXMKKyAgICAgKiBwcm90ZWN0ZWQgYnkgQGxvY2ss
IG5vdCBAbWFwdHJhY2tfbG9jay4KKyAgICAgKi8KKyAgICBzdHJ1Y3QgcmFk
aXhfdHJlZV9yb290IG1hcHRyYWNrX3RyZWU7CiAKICAgICAvKiBEb21haW4g
dG8gd2hpY2ggdGhpcyBzdHJ1Y3QgZ3JhbnRfdGFibGUgYmVsb25ncy4gKi8K
ICAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpkb21haW47CkBAIC00NjAsMzQg
KzQ2Niw2IEBAIHN0YXRpYyBpbnQgZ2V0X3BhZ2VkX2ZyYW1lKHVuc2lnbmVk
IGxvbmcKICAgICByZXR1cm4gR05UU1Rfb2theTsKIH0KIAotc3RhdGljIGlu
bGluZSB2b2lkCi1kb3VibGVfZ3RfbG9jayhzdHJ1Y3QgZ3JhbnRfdGFibGUg
KmxndCwgc3RydWN0IGdyYW50X3RhYmxlICpyZ3QpCi17Ci0gICAgLyoKLSAg
ICAgKiBTZWUgbWFwa2luZCgpIGZvciB3aHkgdGhlIHdyaXRlIGxvY2sgaXMg
YWxzbyByZXF1aXJlZCBmb3IgdGhlCi0gICAgICogcmVtb3RlIGRvbWFpbi4K
LSAgICAgKi8KLSAgICBpZiAoIGxndCA8IHJndCApCi0gICAgewotICAgICAg
ICBncmFudF93cml0ZV9sb2NrKGxndCk7Ci0gICAgICAgIGdyYW50X3dyaXRl
X2xvY2socmd0KTsKLSAgICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAgICAg
aWYgKCBsZ3QgIT0gcmd0ICkKLSAgICAgICAgICAgIGdyYW50X3dyaXRlX2xv
Y2socmd0KTsKLSAgICAgICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOwotICAg
IH0KLX0KLQotc3RhdGljIGlubGluZSB2b2lkCi1kb3VibGVfZ3RfdW5sb2Nr
KHN0cnVjdCBncmFudF90YWJsZSAqbGd0LCBzdHJ1Y3QgZ3JhbnRfdGFibGUg
KnJndCkKLXsKLSAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKLSAgICBp
ZiAoIGxndCAhPSByZ3QgKQotICAgICAgICBncmFudF93cml0ZV91bmxvY2so
cmd0KTsKLX0KLQogI2RlZmluZSBJTlZBTElEX01BUFRSQUNLX0hBTkRMRSBV
SU5UX01BWAogCiBzdGF0aWMgaW5saW5lIGdyYW50X2hhbmRsZV90CkBAIC05
MDcsNDEgKzg4NSwxNyBAQCBzdGF0aWMgc3RydWN0IGFjdGl2ZV9ncmFudF9l
bnRyeSAqZ3JhbnRfCiAgICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiB9
CiAKLSNkZWZpbmUgTUFQS0lORF9SRUFEIDEKLSNkZWZpbmUgTUFQS0lORF9X
UklURSAyCi1zdGF0aWMgdW5zaWduZWQgaW50IG1hcGtpbmQoCi0gICAgc3Ry
dWN0IGdyYW50X3RhYmxlICpsZ3QsIGNvbnN0IHN0cnVjdCBkb21haW4gKnJk
LCBtZm5fdCBtZm4pCi17Ci0gICAgc3RydWN0IGdyYW50X21hcHBpbmcgKm1h
cDsKLSAgICBncmFudF9oYW5kbGVfdCBoYW5kbGUsIGxpbWl0ID0gbGd0LT5t
YXB0cmFja19saW1pdDsKLSAgICB1bnNpZ25lZCBpbnQga2luZCA9IDA7Ci0K
LSAgICAvKgotICAgICAqIE11c3QgaGF2ZSB0aGUgbG9jYWwgZG9tYWluJ3Mg
Z3JhbnQgdGFibGUgd3JpdGUgbG9jayB3aGVuCi0gICAgICogaXRlcmF0aW5n
IG92ZXIgaXRzIG1hcHRyYWNrIGVudHJpZXMuCi0gICAgICovCi0gICAgQVNT
RVJUKHBlcmNwdV9yd19pc193cml0ZV9sb2NrZWQoJmxndC0+bG9jaykpOwot
ICAgIC8qCi0gICAgICogTXVzdCBoYXZlIHRoZSByZW1vdGUgZG9tYWluJ3Mg
Z3JhbnQgdGFibGUgd3JpdGUgbG9jayB3aGlsZQotICAgICAqIGNvdW50aW5n
IGl0cyBhY3RpdmUgZW50cmllcy4KLSAgICAgKi8KLSAgICBBU1NFUlQocGVy
Y3B1X3J3X2lzX3dyaXRlX2xvY2tlZCgmcmQtPmdyYW50X3RhYmxlLT5sb2Nr
KSk7Ci0KLSAgICBzbXBfcm1iKCk7Ci0KLSAgICBmb3IgKCBoYW5kbGUgPSAw
OyAhKGtpbmQgJiBNQVBLSU5EX1dSSVRFKSAmJiBoYW5kbGUgPCBsaW1pdDsg
aGFuZGxlKysgKQotICAgIHsKLSAgICAgICAgbWFwID0gJm1hcHRyYWNrX2Vu
dHJ5KGxndCwgaGFuZGxlKTsKLSAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3Mg
JiAoR05UTUFQX2RldmljZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgfHwKLSAg
ICAgICAgICAgICBtYXAtPmRvbWlkICE9IHJkLT5kb21haW5faWQgKQotICAg
ICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmICggbWZuX2VxKF9hY3Rp
dmVfZW50cnkocmQtPmdyYW50X3RhYmxlLCBtYXAtPnJlZikubWZuLCBtZm4p
ICkKLSAgICAgICAgICAgIGtpbmQgfD0gbWFwLT5mbGFncyAmIEdOVE1BUF9y
ZWFkb25seSA/Ci0gICAgICAgICAgICAgICAgICAgIE1BUEtJTkRfUkVBRCA6
IE1BUEtJTkRfV1JJVEU7Ci0gICAgfQotCi0gICAgcmV0dXJuIGtpbmQ7Ci19
Cit1bmlvbiBtYXB0cmFja19ub2RlIHsKKyAgICBzdHJ1Y3QgeworICAgICAg
ICAvKiBSYWRpeCB0cmVlIHNsb3QgcG9pbnRlcnMgdXNlIHR3byBvZiB0aGUg
Yml0cy4gKi8KKyNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKKyAgICAg
ICAgdW5zaWduZWQgbG9uZyAgICA6IDI7CisjZW5kaWYKKyAgICAgICAgdW5z
aWduZWQgbG9uZyByZCA6IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsKKyAgICAg
ICAgdW5zaWduZWQgbG9uZyB3ciA6IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsK
KyAgICB9IGNudDsKKyAgICB1bnNpZ25lZCBsb25nIHJhdzsKK307CiAKIHN0
YXRpYyB2b2lkCiBtYXBfZ3JhbnRfcmVmKApAQCAtOTYxLDcgKzkxNSw2IEBA
IG1hcF9ncmFudF9yZWYoCiAgICAgc3RydWN0IGdyYW50X21hcHBpbmcgKm10
OwogICAgIGdyYW50X2VudHJ5X2hlYWRlcl90ICpzaGFoOwogICAgIHVpbnQx
Nl90ICpzdGF0dXM7Ci0gICAgYm9vbF90IG5lZWRfaW9tbXU7CiAKICAgICBs
ZWQgPSBjdXJyZW50OwogICAgIGxkID0gbGVkLT5kb21haW47CkBAIC0xMTgx
LDMxICsxMTM0LDc1IEBAIG1hcF9ncmFudF9yZWYoCiAgICAgICogYXMgbWVt
LXNoYXJpbmcgYW5kIElPTU1VIHVzZSBhcmUgaW5jb21wYXRpYmxlKS4gVGhl
IGRvbV9pbyBjYXNlIHdvdWxkCiAgICAgICogbmVlZCBjaGVja2luZyBzZXBh
cmF0ZWx5IGlmIHdlIGNvbXBhcmVkIGFnYWluc3Qgb3duZXIgaGVyZS4KICAg
ICAgKi8KLSAgICBuZWVkX2lvbW11ID0gbGQgIT0gcmQgJiYgZ250dGFiX25l
ZWRfaW9tbXVfbWFwcGluZyhsZCk7Ci0gICAgaWYgKCBuZWVkX2lvbW11ICkK
KyAgICBpZiAoIGxkICE9IHJkICYmIGdudHRhYl9uZWVkX2lvbW11X21hcHBp
bmcobGQpICkKICAgICB7CisgICAgICAgIHVuaW9uIG1hcHRyYWNrX25vZGUg
bm9kZSA9IHsKKyAgICAgICAgICAgIC5jbnQucmQgPSAhIShvcC0+ZmxhZ3Mg
JiBHTlRNQVBfcmVhZG9ubHkpLAorICAgICAgICAgICAgLmNudC53ciA9ICEo
b3AtPmZsYWdzICYgR05UTUFQX3JlYWRvbmx5KSwKKyAgICAgICAgfTsKKyAg
ICAgICAgaW50IGVycjsKKyAgICAgICAgdm9pZCAqKnNsb3QgPSBOVUxMOwog
ICAgICAgICB1bnNpZ25lZCBpbnQga2luZDsKIAotICAgICAgICBkb3VibGVf
Z3RfbG9jayhsZ3QsIHJndCk7CisgICAgICAgIGdyYW50X3dyaXRlX2xvY2so
bGd0KTsKKworICAgICAgICBlcnIgPSByYWRpeF90cmVlX2luc2VydCgmbGd0
LT5tYXB0cmFja190cmVlLCBtZm5feChtZm4pLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByYWRpeF90cmVlX3Vsb25nX3RvX3B0cihub2Rl
LnJhdykpOworICAgICAgICBpZiAoIGVyciA9PSAtRUVYSVNUICkKKyAgICAg
ICAgeworICAgICAgICAgICAgc2xvdCA9IHJhZGl4X3RyZWVfbG9va3VwX3Ns
b3QoJmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gobWZuKSk7CisgICAgICAg
ICAgICBpZiAoIGxpa2VseShzbG90KSApCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgbm9kZS5yYXcgPSByYWRpeF90cmVlX3B0cl90b191bG9u
Zygqc2xvdCk7CisgICAgICAgICAgICAgICAgZXJyID0gLUVCVVNZOworCisg
ICAgICAgICAgICAgICAgLyogVXBkYXRlIG5vZGUgb25seSB3aGVuIHJlZmNv
dW50IGRvZXNuJ3Qgb3ZlcmZsb3cuICovCisgICAgICAgICAgICAgICAgaWYg
KCBvcC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkgPyArK25vZGUuY250LnJk
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOiArK25vZGUuY250LndyICkKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVfcmVwbGFjZV9zbG90KHNs
b3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJhZGl4X3RyZWVfdWxvbmdfdG9fcHRyKG5vZGUucmF3KSk7CisgICAg
ICAgICAgICAgICAgICAgIGVyciA9IDA7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOworICAgICAgICB9CiAKICAgICAg
ICAgLyoKICAgICAgICAgICogV2UncmUgbm90IHRyYW5zbGF0ZWQsIHNvIHdl
IGtub3cgdGhhdCBkZm5zIGFuZCBtZm5zIGFyZQogICAgICAgICAgKiB0aGUg
c2FtZSB0aGluZ3MsIHNvIHRoZSBJT01NVSBlbnRyeSBpcyBhbHdheXMgMS10
by0xLgogICAgICAgICAgKi8KLSAgICAgICAga2luZCA9IG1hcGtpbmQobGd0
LCByZCwgbWZuKTsKLSAgICAgICAgaWYgKCAhKG9wLT5mbGFncyAmIEdOVE1B
UF9yZWFkb25seSkgJiYKLSAgICAgICAgICAgICAhKGtpbmQgJiBNQVBLSU5E
X1dSSVRFKSApCisgICAgICAgIGlmICggIShvcC0+ZmxhZ3MgJiBHTlRNQVBf
cmVhZG9ubHkpICYmIG5vZGUuY250LndyID09IDEgKQogICAgICAgICAgICAg
a2luZCA9IElPTU1VRl9yZWFkYWJsZSB8IElPTU1VRl93cml0YWJsZTsKLSAg
ICAgICAgZWxzZSBpZiAoICFraW5kICkKKyAgICAgICAgZWxzZSBpZiAoIChv
cC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkpICYmCisgICAgICAgICAgICAg
ICAgICBub2RlLmNudC5yZCA9PSAxICYmICFub2RlLmNudC53ciApCiAgICAg
ICAgICAgICBraW5kID0gSU9NTVVGX3JlYWRhYmxlOwogICAgICAgICBlbHNl
CiAgICAgICAgICAgICBraW5kID0gMDsKLSAgICAgICAgaWYgKCBraW5kICYm
IGlvbW11X2xlZ2FjeV9tYXAobGQsIF9kZm4obWZuX3gobWZuKSksIG1mbiwg
MCwga2luZCkgKQorICAgICAgICBpZiAoIGVyciB8fAorICAgICAgICAgICAg
IChraW5kICYmIGlvbW11X2xlZ2FjeV9tYXAobGQsIF9kZm4obWZuX3gobWZu
KSksIG1mbiwgMCwga2luZCkpICkKICAgICAgICAgewotICAgICAgICAgICAg
ZG91YmxlX2d0X3VubG9jayhsZ3QsIHJndCk7CisgICAgICAgICAgICBpZiAo
ICFlcnIgKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICgg
c2xvdCApCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBvcC0+ZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkgPyBub2RlLmNudC5yZC0t
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6IG5vZGUuY250LndyLS07CisgICAgICAgICAgICAgICAgICAgIHJh
ZGl4X3RyZWVfcmVwbGFjZV9zbG90KHNsb3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhZGl4X3RyZWVfdWxvbmdf
dG9fcHRyKG5vZGUucmF3KSk7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJl
ZV9kZWxldGUoJmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gobWZuKSk7Cisg
ICAgICAgICAgICB9CisKICAgICAgICAgICAgIHJjID0gR05UU1RfZ2VuZXJh
bF9lcnJvcjsKLSAgICAgICAgICAgIGdvdG8gdW5kb19vdXQ7CiAgICAgICAg
IH0KKworICAgICAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKKworICAg
ICAgICBpZiAoIHJjICE9IEdOVFNUX29rYXkgKQorICAgICAgICAgICAgZ290
byB1bmRvX291dDsKICAgICB9CiAKICAgICBUUkFDRV8xRChUUkNfTUVNX1BB
R0VfR1JBTlRfTUFQLCBvcC0+ZG9tKTsKQEAgLTEyMTMsMTAgKzEyMTAsNiBA
QCBtYXBfZ3JhbnRfcmVmKAogICAgIC8qCiAgICAgICogQWxsIG1hcHRyYWNr
IGVudHJ5IHVzZXJzIGNoZWNrIG10LT5mbGFncyBmaXJzdCBiZWZvcmUgdXNp
bmcgdGhlCiAgICAgICogb3RoZXIgZmllbGRzIHNvIGp1c3QgZW5zdXJlIHRo
ZSBmbGFncyBmaWVsZCBpcyBzdG9yZWQgbGFzdC4KLSAgICAgKgotICAgICAq
IEhvd2V2ZXIsIGlmIGdudHRhYl9uZWVkX2lvbW11X21hcHBpbmcoKSB0aGVu
IHRoaXMgd291bGQgcmFjZQotICAgICAqIHdpdGggYSBjb25jdXJyZW50IG1h
cGtpbmQoKSBjYWxsIChvbiBhbiB1bm1hcCwgZm9yIGV4YW1wbGUpCi0gICAg
ICogYW5kIGEgbG9jayBpcyByZXF1aXJlZC4KICAgICAgKi8KICAgICBtdCA9
ICZtYXB0cmFja19lbnRyeShsZ3QsIGhhbmRsZSk7CiAgICAgbXQtPmRvbWlk
ID0gb3AtPmRvbTsKQEAgLTEyMjQsOSArMTIxNyw2IEBAIG1hcF9ncmFudF9y
ZWYoCiAgICAgc21wX3dtYigpOwogICAgIHdyaXRlX2F0b21pYygmbXQtPmZs
YWdzLCBvcC0+ZmxhZ3MpOwogCi0gICAgaWYgKCBuZWVkX2lvbW11ICkKLSAg
ICAgICAgZG91YmxlX2d0X3VubG9jayhsZ3QsIHJndCk7Ci0KICAgICBvcC0+
ZGV2X2J1c19hZGRyID0gbWZuX3RvX21hZGRyKG1mbik7CiAgICAgb3AtPmhh
bmRsZSAgICAgICA9IGhhbmRsZTsKICAgICBvcC0+c3RhdHVzICAgICAgID0g
R05UU1Rfb2theTsKQEAgLTE0NDgsMTkgKzE0MzgsMzQgQEAgdW5tYXBfY29t
bW9uKAogICAgIC8qIFNlZSB0aGUgcmVzcGVjdGl2ZSBjb21tZW50IGluIG1h
cF9ncmFudF9yZWYoKS4gKi8KICAgICBpZiAoIHJjID09IEdOVFNUX29rYXkg
JiYgbGQgIT0gcmQgJiYgZ250dGFiX25lZWRfaW9tbXVfbWFwcGluZyhsZCkg
KQogICAgIHsKLSAgICAgICAgdW5zaWduZWQgaW50IGtpbmQ7CisgICAgICAg
IHZvaWQgKipzbG90OworICAgICAgICB1bmlvbiBtYXB0cmFja19ub2RlIG5v
ZGU7CiAgICAgICAgIGludCBlcnIgPSAwOwogCi0gICAgICAgIGRvdWJsZV9n
dF9sb2NrKGxndCwgcmd0KTsKKyAgICAgICAgZ3JhbnRfd3JpdGVfbG9jayhs
Z3QpOworICAgICAgICBzbG90ID0gcmFkaXhfdHJlZV9sb29rdXBfc2xvdCgm
bGd0LT5tYXB0cmFja190cmVlLCBtZm5feChvcC0+bWZuKSk7CisgICAgICAg
IG5vZGUucmF3ID0gbGlrZWx5KHNsb3QpID8gcmFkaXhfdHJlZV9wdHJfdG9f
dWxvbmcoKnNsb3QpIDogMDsKKworICAgICAgICAvKiBSZWZjb3VudCBtdXN0
IG5vdCB1bmRlcmZsb3cuICovCisgICAgICAgIGlmICggIShmbGFncyAmIEdO
VE1BUF9yZWFkb25seSA/IG5vZGUuY250LnJkLS0KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5jbnQud3ItLSkgKQor
ICAgICAgICAgICAgQlVHKCk7CiAKLSAgICAgICAga2luZCA9IG1hcGtpbmQo
bGd0LCByZCwgb3AtPm1mbik7Ci0gICAgICAgIGlmICggIWtpbmQgKQorICAg
ICAgICBpZiAoICFub2RlLnJhdyApCiAgICAgICAgICAgICBlcnIgPSBpb21t
dV9sZWdhY3lfdW5tYXAobGQsIF9kZm4obWZuX3gob3AtPm1mbikpLCAwKTsK
LSAgICAgICAgZWxzZSBpZiAoICEoa2luZCAmIE1BUEtJTkRfV1JJVEUpICkK
KyAgICAgICAgZWxzZSBpZiAoICEoZmxhZ3MgJiBHTlRNQVBfcmVhZG9ubHkp
ICYmICFub2RlLmNudC53ciApCiAgICAgICAgICAgICBlcnIgPSBpb21tdV9s
ZWdhY3lfbWFwKGxkLCBfZGZuKG1mbl94KG9wLT5tZm4pKSwgb3AtPm1mbiwg
MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU9NTVVG
X3JlYWRhYmxlKTsKIAotICAgICAgICBkb3VibGVfZ3RfdW5sb2NrKGxndCwg
cmd0KTsKKyAgICAgICAgaWYgKCBlcnIgKQorICAgICAgICAgICAgOworICAg
ICAgICBlbHNlIGlmICggIW5vZGUucmF3ICkKKyAgICAgICAgICAgIHJhZGl4
X3RyZWVfZGVsZXRlKCZsZ3QtPm1hcHRyYWNrX3RyZWUsIG1mbl94KG9wLT5t
Zm4pKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFkaXhfdHJlZV9y
ZXBsYWNlX3Nsb3Qoc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJhZGl4X3RyZWVfdWxvbmdfdG9fcHRyKG5vZGUucmF3KSk7
CisKKyAgICAgICAgZ3JhbnRfd3JpdGVfdW5sb2NrKGxndCk7CiAKICAgICAg
ICAgaWYgKCBlcnIgKQogICAgICAgICAgICAgcmMgPSBHTlRTVF9nZW5lcmFs
X2Vycm9yOwpAQCAtMTkxOCw2ICsxOTIzLDggQEAgaW50IGdyYW50X3RhYmxl
X2luaXQoc3RydWN0IGRvbWFpbiAqZCwgaQogICAgICAgICBndC0+bWFwdHJh
Y2sgPSB2emFsbG9jKGd0LT5tYXhfbWFwdHJhY2tfZnJhbWVzICogc2l6ZW9m
KCpndC0+bWFwdHJhY2spKTsKICAgICAgICAgaWYgKCBndC0+bWFwdHJhY2sg
PT0gTlVMTCApCiAgICAgICAgICAgICBnb3RvIG91dDsKKworICAgICAgICBy
YWRpeF90cmVlX2luaXQoJmd0LT5tYXB0cmFja190cmVlKTsKICAgICB9CiAK
ICAgICAvKiBTaGFyZWQgZ3JhbnQgdGFibGUuICovCkBAIC0zNzAxLDYgKzM3
MDgsNyBAQCBpbnQgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Moc3RydWN0IGRv
bWFpCiAgICAgZm9yICggaGFuZGxlID0gZ3QtPm1hcHRyYWNrX2xpbWl0OyBo
YW5kbGU7ICkKICAgICB7CiAgICAgICAgIHVuc2lnbmVkIGludCBjbGVhcl9m
bGFncyA9IDA7CisgICAgICAgIG1mbl90IG1mbjsKIAogICAgICAgICAvKgog
ICAgICAgICAgKiBEZWFsIHdpdGggZnVsbCBwYWdlcyBzdWNoIHRoYXQgdGhl
aXIgZnJlZWluZyAoaW4gdGhlIGJvZHkgb2YgdGhlCkBAIC0zODA2LDE3ICsz
ODE0LDMxIEBAIGludCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3Qg
ZG9tYWkKICAgICAgICAgaWYgKCBjbGVhcl9mbGFncyApCiAgICAgICAgICAg
ICBnbnR0YWJfY2xlYXJfZmxhZ3MocmQsIGNsZWFyX2ZsYWdzLCBzdGF0dXMp
OwogCisgICAgICAgIG1mbiA9IGFjdC0+bWZuOworCiAgICAgICAgIGFjdGl2
ZV9lbnRyeV9yZWxlYXNlKGFjdCk7CiAgICAgICAgIGdyYW50X3JlYWRfdW5s
b2NrKHJndCk7CiAKICAgICAgICAgcmN1X3VubG9ja19kb21haW4ocmQpOwog
CiAgICAgICAgIG1hcC0+ZmxhZ3MgPSAwOworCisgICAgICAgIC8qCisgICAg
ICAgICAqIFRoaXMgaXMgZXhjZXNzaXZlIGluIHRoYXQgYSBzaW5nbGUgc3Vj
aCBjYWxsIHdvdWxkIHN1ZmZpY2UgcGVyCisgICAgICAgICAqIG1hcHBlZCBN
Rk4gKG9yIG5vbmUgYXQgYWxsLCBpZiBubyBlbnRyeSB3YXMgZXZlciBpbnNl
cnRlZCkuIEJ1dCBpdAorICAgICAgICAgKiBzaG91bGQgYmUgdGhlIGNvbW1v
biBjYXNlIGZvciBhbiBNRk4gdG8gYmUgbWFwcGVkIGp1c3Qgb25jZSwgYW5k
CisgICAgICAgICAqIHRoaXMgd2F5IHdlIGRvbid0IG5lZWQgdG8gZnVydGhl
ciBtYWludGFpbiB0aGUgY291bnRlcnMuIFdlIGFsc28KKyAgICAgICAgICog
ZG9uJ3Qgd2FudCB0byBsZWF2ZSBjbGVhbmluZyB1cCBvZiB0aGUgdHJlZSBh
cyBhIHdob2xlIHRvIHRoZSBlbmQKKyAgICAgICAgICogb2YgdGhlIGZ1bmN0
aW9uLCBhcyB0aGlzIGNvdWxkIHRha2UgcXVpdGUgc29tZSB0aW1lLgorICAg
ICAgICAgKi8KKyAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUoJmd0LT5tYXB0
cmFja190cmVlLCBtZm5feChtZm4pKTsKICAgICB9CiAKICAgICBndC0+bWFw
dHJhY2tfbGltaXQgPSAwOwogICAgIEZSRUVfWEVOSEVBUF9QQUdFKGd0LT5t
YXB0cmFja1swXSk7CiAKKyAgICByYWRpeF90cmVlX2Rlc3Ryb3koJmd0LT5t
YXB0cmFja190cmVlLCBOVUxMKTsKKwogICAgIHJldHVybiAwOwogfQogCi0t
LSBhL3hlbi9pbmNsdWRlL3hlbi9yYWRpeC10cmVlLmgKKysrIGIveGVuL2lu
Y2x1ZGUveGVuL3JhZGl4LXRyZWUuaApAQCAtMTkwLDYgKzE5MCwyNSBAQCBz
dGF0aWMgaW5saW5lIGludCByYWRpeF90cmVlX3B0cl90b19pbnQoCiAgICAg
cmV0dXJuIChpbnQpKChsb25nKXB0ciA+PiAyKTsKIH0KIAorLyoqCisgKiBy
YWRpeF90cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfToKKyAqCisg
KiBTYW1lIGZvciB1bnNpZ25lZCBsb25nIHZhbHVlcy4gQmV3YXJlIHRob3Vn
aCB0aGF0IG9ubHkgQklUU19QRVJfTE9ORy0yCisgKiBiaXRzIGFyZSBhY3R1
YWxseSB1c2FibGUgZm9yIHRoZSB2YWx1ZS4KKyAqLworc3RhdGljIGlubGlu
ZSB2b2lkICpyYWRpeF90cmVlX3Vsb25nX3RvX3B0cih1bnNpZ25lZCBsb25n
IHZhbCkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHB0ciA9ICh2YWwgPDwgMikg
fCAweDI7CisgICAgQVNTRVJUKChwdHIgPj4gMikgPT0gdmFsKTsKKyAgICBy
ZXR1cm4gKHZvaWQgKilwdHI7Cit9CisKK3N0YXRpYyBpbmxpbmUgdW5zaWdu
ZWQgbG9uZyByYWRpeF90cmVlX3B0cl90b191bG9uZyh2b2lkICpwdHIpCit7
CisgICAgQVNTRVJUKCgodW5zaWduZWQgbG9uZylwdHIgJiAweDMpID09IDB4
Mik7CisgICAgcmV0dXJuICh1bnNpZ25lZCBsb25nKXB0ciA+PiAyOworfQor
CiBpbnQgcmFkaXhfdHJlZV9pbnNlcnQoc3RydWN0IHJhZGl4X3RyZWVfcm9v
dCAqLCB1bnNpZ25lZCBsb25nLCB2b2lkICopOwogdm9pZCAqcmFkaXhfdHJl
ZV9sb29rdXAoc3RydWN0IHJhZGl4X3RyZWVfcm9vdCAqLCB1bnNpZ25lZCBs
b25nKTsKIHZvaWQgKipyYWRpeF90cmVlX2xvb2t1cF9zbG90KHN0cnVjdCBy
YWRpeF90cmVlX3Jvb3QgKiwgdW5zaWduZWQgbG9uZyk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.14-1.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.14-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGFkZCBwcmVlbXB0aW9uIGNoZWNrIHRvIGdudHRhYl9yZWxl
YXNlX21hcHBpbmdzKCkKCkEgZ3Vlc3QgbWF5IGRpZSB3aXRoIG1hbnkgZ3Jh
bnQgbWFwcGluZ3Mgc3RpbGwgaW4gcGxhY2UsIG9yIHNpbXBseSB3aXRoCmEg
bGFyZ2UgbWFwdHJhY2sgdGFibGUuIEl0ZXJhdGluZyB0aHJvdWdoIHRoaXMg
bWF5IHRha2UgbW9yZSB0aW1lIHRoYW4KaXMgcmVhc29uYWJsZSB3aXRob3V0
IGludGVybWVkaWF0ZSBwcmVlbXB0aW9uICh0byBydW4gc29mdGlycXMgYW5k
CnBlcmhhcHMgdGhlIHNjaGVkdWxlcikuCgpNb3ZlIHRoZSBpbnZvY2F0aW9u
IG9mIHRoZSBmdW5jdGlvbiB0byB0aGUgc2VjdGlvbiB3aGVyZSBvdGhlcgpy
ZXN0YXJ0YWJsZSBmdW5jdGlvbnMgZ2V0IGludm9rZWQsIGFuZCBoYXZlIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgY2hlY2sKZm9yIHByZWVtcHRpb24gZXZlcnkg
b25jZSBpbiBhIHdoaWxlLiBIYXZlIGl0IGl0ZXJhdGUgdGhlIHRhYmxlCmJh
Y2t3YXJkcywgc3VjaCB0aGF0IGRlY3JlYXNpbmcgdGhlIG1hcHRyYWNrIGxp
bWl0IGlzIGFsbCBpdCB0YWtlcyB0bwpjb252ZXkgcmVzdGFydCBpbmZvcm1h
dGlvbi4KCkluIGRvbWFpbl90ZWFyZG93bigpIGludHJvZHVjZSBQUk9HX25v
bmUgc3VjaCB0aGF0IGluc2VydGluZyBhdCB0aGUKZnJvbnQgd2lsbCBiZSBl
YXNpZXIgZ29pbmcgZm9yd2FyZC4KClRoaXMgaXMgcGFydCBvZiBDVkUtMjAy
MS0yODY5OCAvIFhTQS0zODAuCgpSZXBvcnRlZC1ieTogQW5kcmV3IENvb3Bl
ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
SnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9j
b21tb24vZG9tYWluLmMKKysrIGIveGVuL2NvbW1vbi9kb21haW4uYwpAQCAt
NzIxLDExICs3MjEsMTMgQEAgaW50IGRvbWFpbl9raWxsKHN0cnVjdCBkb21h
aW4gKmQpCiAgICAgICAgICAgICByZXR1cm4gZG9tYWluX2tpbGwoZCk7CiAg
ICAgICAgIGQtPmlzX2R5aW5nID0gRE9NRFlJTkdfZHlpbmc7CiAgICAgICAg
IGFyZ29fZGVzdHJveShkKTsKLSAgICAgICAgZ250dGFiX3JlbGVhc2VfbWFw
cGluZ3MoZCk7CiAgICAgICAgIHZudW1hX2Rlc3Ryb3koZC0+dm51bWEpOwog
ICAgICAgICBkb21haW5fc2V0X291dHN0YW5kaW5nX3BhZ2VzKGQsIDApOwog
ICAgICAgICAvKiBmYWxsdGhyb3VnaCAqLwogICAgIGNhc2UgRE9NRFlJTkdf
ZHlpbmc6CisgICAgICAgIHJjID0gZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Mo
ZCk7CisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIHJjID0gZXZ0Y2huX2Rlc3Ryb3koZCk7CiAgICAgICAgIGlmICgg
cmMgKQogICAgICAgICAgICAgYnJlYWs7Ci0tLSBhL3hlbi9jb21tb24vZ3Jh
bnRfdGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAg
LTY0LDcgKzY0LDEzIEBAIHN0cnVjdCBncmFudF90YWJsZSB7CiAgICAgdW5z
aWduZWQgaW50ICAgICAgICAgIG5yX2dyYW50X2ZyYW1lczsKICAgICAvKiBO
dW1iZXIgb2YgZ3JhbnQgc3RhdHVzIGZyYW1lcyBzaGFyZWQgd2l0aCBndWVz
dCAoZm9yIHZlcnNpb24gMikgKi8KICAgICB1bnNpZ25lZCBpbnQgICAgICAg
ICAgbnJfc3RhdHVzX2ZyYW1lczsKLSAgICAvKiBOdW1iZXIgb2YgYXZhaWxh
YmxlIG1hcHRyYWNrIGVudHJpZXMuICovCisgICAgLyoKKyAgICAgKiBOdW1i
ZXIgb2YgYXZhaWxhYmxlIG1hcHRyYWNrIGVudHJpZXMuICBGb3IgY2xlYW51
cCBwdXJwb3NlcyBpdCBpcworICAgICAqIGltcG9ydGFudCB0byByZWFsaXpl
IHRoYXQgdGhpcyBmaWVsZCBhbmQgQG1hcHRyYWNrIGZ1cnRoZXIgZG93biB3
aWxsCisgICAgICogb25seSBldmVyIGJlIGFjY2Vzc2VkIGJ5IHRoZSBsb2Nh
bCBkb21haW4uICBUaHVzIGl0IGlzIG9rYXkgdG8gY2xlYW4KKyAgICAgKiB1
cCBlYXJseSwgYW5kIHRvIHNocmluayB0aGUgbGltaXQgZm9yIHRoZSBwdXJw
b3NlIG9mIHRyYWNraW5nIGNsZWFudXAKKyAgICAgKiBwcm9ncmVzcy4KKyAg
ICAgKi8KICAgICB1bnNpZ25lZCBpbnQgICAgICAgICAgbWFwdHJhY2tfbGlt
aXQ7CiAgICAgLyogU2hhcmVkIGdyYW50IHRhYmxlIChzZWUgaW5jbHVkZS9w
dWJsaWMvZ3JhbnRfdGFibGUuaCkuICovCiAgICAgdW5pb24gewpAQCAtMzcw
OCw5ICszNzE0LDcgQEAgZG9fZ3JhbnRfdGFibGVfb3AoCiAjaW5jbHVkZSAi
Y29tcGF0L2dyYW50X3RhYmxlLmMiCiAjZW5kaWYKIAotdm9pZAotZ250dGFi
X3JlbGVhc2VfbWFwcGluZ3MoCi0gICAgc3RydWN0IGRvbWFpbiAqZCkKK2lu
dCBnbnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWluICpkKQog
ewogICAgIHN0cnVjdCBncmFudF90YWJsZSAgICpndCA9IGQtPmdyYW50X3Rh
YmxlLCAqcmd0OwogICAgIHN0cnVjdCBncmFudF9tYXBwaW5nICptYXA7CkBA
IC0zNzI0LDEwICszNzI4LDM0IEBAIGdudHRhYl9yZWxlYXNlX21hcHBpbmdz
KAogCiAgICAgQlVHX09OKCFkLT5pc19keWluZyk7CiAKLSAgICBmb3IgKCBo
YW5kbGUgPSAwOyBoYW5kbGUgPCBndC0+bWFwdHJhY2tfbGltaXQ7IGhhbmRs
ZSsrICkKKyAgICBpZiAoICFndCB8fCAhZ3QtPm1hcHRyYWNrICkKKyAgICAg
ICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCBoYW5kbGUgPSBndC0+bWFwdHJh
Y2tfbGltaXQ7IGhhbmRsZTsgKQogICAgIHsKICAgICAgICAgdW5zaWduZWQg
aW50IGNsZWFyX2ZsYWdzID0gMDsKIAorICAgICAgICAvKgorICAgICAgICAg
KiBEZWFsIHdpdGggZnVsbCBwYWdlcyBzdWNoIHRoYXQgdGhlaXIgZnJlZWlu
ZyAoaW4gdGhlIGJvZHkgb2YgdGhlCisgICAgICAgICAqIGlmKCkpIHJlbWFp
bnMgc2ltcGxlLgorICAgICAgICAgKi8KKyAgICAgICAgaWYgKCBoYW5kbGUg
PCBndC0+bWFwdHJhY2tfbGltaXQgJiYgIShoYW5kbGUgJSBNQVBUUkFDS19Q
RVJfUEFHRSkgKQorICAgICAgICB7CisgICAgICAgICAgICAvKgorICAgICAg
ICAgICAgICogQ2hhbmdpbmcgbWFwdHJhY2tfbGltaXQgYWx0ZXJzIG5yX21h
cHRyYWNrX2ZyYW1lcygpJ2VzIHJldHVybgorICAgICAgICAgICAgICogdmFs
dWUuIEZyZWUgdGhlIHRoZW4gZXhjZXNzIHRyYWlsaW5nIHBhZ2UgcmlnaHQg
aGVyZSwgcmF0aGVyCisgICAgICAgICAgICAgKiB0aGFuIGxlYXZpbmcgaXQg
dG8gZ3JhbnRfdGFibGVfZGVzdHJveSgpIChhbmQgaW4gdHVybiByZXF1aXJp
bmcKKyAgICAgICAgICAgICAqIHRvIGxlYXZlIGd0LT5tYXB0cmFja19saW1p
dCB1bmFsdGVyZWQpLgorICAgICAgICAgICAgICovCisgICAgICAgICAgICBn
dC0+bWFwdHJhY2tfbGltaXQgPSBoYW5kbGU7CisgICAgICAgICAgICBGUkVF
X1hFTkhFQVBfUEFHRShndC0+bWFwdHJhY2tbbnJfbWFwdHJhY2tfZnJhbWVz
KGd0KV0pOworCisgICAgICAgICAgICBpZiAoIGh5cGVyY2FsbF9wcmVlbXB0
X2NoZWNrKCkgKQorICAgICAgICAgICAgICAgIHJldHVybiAtRVJFU1RBUlQ7
CisgICAgICAgIH0KKworICAgICAgICAtLWhhbmRsZTsKKwogICAgICAgICBt
YXAgPSAmbWFwdHJhY2tfZW50cnkoZ3QsIGhhbmRsZSk7CiAgICAgICAgIGlm
ICggIShtYXAtPmZsYWdzICYgKEdOVE1BUF9kZXZpY2VfbWFwfEdOVE1BUF9o
b3N0X21hcCkpICkKICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMzgxOCw2
ICszODQ2LDExIEBAIGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKAogCiAgICAg
ICAgIG1hcC0+ZmxhZ3MgPSAwOwogICAgIH0KKworICAgIGd0LT5tYXB0cmFj
a19saW1pdCA9IDA7CisgICAgRlJFRV9YRU5IRUFQX1BBR0UoZ3QtPm1hcHRy
YWNrWzBdKTsKKworICAgIHJldHVybiAwOwogfQogCiB2b2lkIGdyYW50X3Rh
YmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9tYWluICpkKQpAQCAt
Mzg4MSw4ICszOTE0LDcgQEAgZ3JhbnRfdGFibGVfZGVzdHJveSgKICAgICAg
ICAgZnJlZV94ZW5oZWFwX3BhZ2UodC0+c2hhcmVkX3Jhd1tpXSk7CiAgICAg
eGZyZWUodC0+c2hhcmVkX3Jhdyk7CiAKLSAgICBmb3IgKCBpID0gMDsgaSA8
IG5yX21hcHRyYWNrX2ZyYW1lcyh0KTsgaSsrICkKLSAgICAgICAgZnJlZV94
ZW5oZWFwX3BhZ2UodC0+bWFwdHJhY2tbaV0pOworICAgIEFTU0VSVCghdC0+
bWFwdHJhY2tfbGltaXQpOwogICAgIHZmcmVlKHQtPm1hcHRyYWNrKTsKIAog
ICAgIGZvciAoIGkgPSAwOyBpIDwgbnJfYWN0aXZlX2dyYW50X2ZyYW1lcyh0
KTsgaSsrICkKLS0tIGEveGVuL2luY2x1ZGUveGVuL2dyYW50X3RhYmxlLmgK
KysrIGIveGVuL2luY2x1ZGUveGVuL2dyYW50X3RhYmxlLmgKQEAgLTQ3LDkg
KzQ3LDcgQEAgdm9pZCBncmFudF90YWJsZV9pbml0X3ZjcHUoc3RydWN0IHZj
cHUgKgogdm9pZCBncmFudF90YWJsZV93YXJuX2FjdGl2ZV9ncmFudHMoc3Ry
dWN0IGRvbWFpbiAqZCk7CiAKIC8qIERvbWFpbiBkZWF0aCByZWxlYXNlIG9m
IGdyYW50ZWQgbWFwcGluZ3Mgb2Ygb3RoZXIgZG9tYWlucycgbWVtb3J5LiAq
Lwotdm9pZAotZ250dGFiX3JlbGVhc2VfbWFwcGluZ3MoCi0gICAgc3RydWN0
IGRvbWFpbiAqZCk7CitpbnQgZ250dGFiX3JlbGVhc2VfbWFwcGluZ3Moc3Ry
dWN0IGRvbWFpbiAqZCk7CiAKIGludCBtZW1fc2hhcmluZ19ncmVmX3RvX2dm
bihzdHJ1Y3QgZ3JhbnRfdGFibGUgKmd0LCBncmFudF9yZWZfdCByZWYsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3QgKmdmbiwgdWludDE2
X3QgKnN0YXR1cyk7CkBAIC03OCw3ICs3Niw3IEBAIHN0YXRpYyBpbmxpbmUg
dm9pZCBncmFudF90YWJsZV9pbml0X3ZjcHUKIAogc3RhdGljIGlubGluZSB2
b2lkIGdyYW50X3RhYmxlX3dhcm5fYWN0aXZlX2dyYW50cyhzdHJ1Y3QgZG9t
YWluICpkKSB7fQogCi1zdGF0aWMgaW5saW5lIHZvaWQgZ250dGFiX3JlbGVh
c2VfbWFwcGluZ3Moc3RydWN0IGRvbWFpbiAqZCkge30KK3N0YXRpYyBpbmxp
bmUgaW50IGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKHN0cnVjdCBkb21haW4g
KmQpIHsgcmV0dXJuIDA7IH0KIAogc3RhdGljIGlubGluZSBpbnQgbWVtX3No
YXJpbmdfZ3JlZl90b19nZm4oc3RydWN0IGdyYW50X3RhYmxlICpndCwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYW50
X3JlZl90IHJlZiwK

--=separator
Content-Type: application/octet-stream; name="xsa380/xsa380-4.14-2.patch"
Content-Disposition: attachment; filename="xsa380/xsa380-4.14-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IHJlcGxhY2UgbWFwa2luZCgpCgptYXBraW5kKCkgZG9lc24n
dCBzY2FsZSB2ZXJ5IHdlbGwgd2l0aCBsYXJnZXIgbWFwdHJhY2sgZW50cnkg
Y291bnRzLAp1c2luZyBhIGJydXRlIGZvcmNlIGxpbmVhciBzZWFyY2ggdGhy
b3VnaCBhbGwgZW50cmllcywgd2l0aCB0aGUgb25seQpvcHRpb24gb2YgYW4g
ZWFybHkgbG9vcCBleGl0IGlmIGEgbWF0Y2hpbmcgd3JpdGFibGUgZW50cnkg
d2FzIGZvdW5kLgpJbnRyb2R1Y2UgYSByYWRpeCB0cmVlIGFsb25nc2lkZSB0
aGUgbWFpbiBtYXB0cmFjayB0YWJsZSwgdGh1cwphbGxvd2luZyBtdWNoIGZh
c3RlciBNRk4tYmFzZWQgbG9va3VwLiBUbyBhdm9pZCB0aGUgbmVlZCB0byBh
Y3R1YWxseQphbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGluZGl2aWR1YWwgbm9k
ZXMsIGVuY29kZSB0aGUgdHdvIGNvdW50ZXJzIGluIHRoZQpub2RlIHBvaW50
ZXJzIHRoZW1zZWx2ZXMsIHRodXMgbGltaXRpbmcgdGhlIG51bWJlciBvZiBw
ZXJtaXR0ZWQKc2ltdWx0YW5lb3VzIHIvbyBhbmQgci93IG1hcHBpbmdzIG9m
IHRoZSBzYW1lIE1GTiB0byAywrPCuS0xICg2NC1iaXQpIC8KMsK54oG1LTEg
KDMyLWJpdCkgZWFjaC4KClRvIGF2b2lkIGVuZm9yY2luZyBhbiB1bm5lY2Vz
c2FyaWx5IGxvdyBib3VuZCBvbiB0aGUgbnVtYmVyIG9mCnNpbXVsdGFuZW91
cyBtYXBwaW5ncyBvZiBhIHNpbmdsZSBNRk4sIGludHJvZHVjZQpyYWRpeF90
cmVlX3t1bG9uZ190b19wdHIscHRyX3RvX3Vsb25nfSBwYXJhbGxlbGluZwpy
YWRpeF90cmVlX3tpbnRfdG9fcHRyLHB0cl90b19pbnR9LgoKQXMgYSBjb25z
ZXF1ZW5jZSBsb2NraW5nIGNoYW5nZXMgYXJlIGFsc28gYXBwbGljYWJsZTog
V2l0aCB0aGVyZSBubwpsb25nZXIgYmVpbmcgYW55IGluc3BlY3Rpb24gb2Yg
dGhlIHJlbW90ZSBkb21haW4ncyBhY3RpdmUgZW50cmllcywKdGhlcmUncyBh
bHNvIG5vIG5lZWQgYW55bW9yZSB0byBob2xkIHRoZSByZW1vdGUgZG9tYWlu
J3MgZ3JhbnQgdGFibGUKbG9jay4gQW5kIHNpbmNlIHdlJ3JlIG5vIGxvbmdl
ciBpdGVyYXRpbmcgb3ZlciB0aGUgbG9jYWwgZG9tYWluJ3MgbWFwCnRyYWNr
IHRhYmxlLCB0aGUgbG9jayBpbiBtYXBfZ3JhbnRfcmVmKCkgY2FuIGFsc28g
YmUgZHJvcHBlZCBiZWZvcmUgdGhlCm5ldyBtYXB0cmFjayBlbnRyeSBhY3R1
YWxseSBnZXRzIHBvcHVsYXRlZC4KCkFzIGEgbmljZSBzaWRlIGVmZmVjdCB0
aGlzIGFsc28gcmVkdWNlcyB0aGUgbnVtYmVyIG9mIElPTU1VIG9wZXJhdGlv
bnMKaW4gdW5tYXBfY29tbW9uKCk6IFByZXZpb3VzbHkgd2Ugd291bGQgaGF2
ZSAiZXN0YWJsaXNoZWQiIGEgcmVhZGFibGUKbWFwcGluZyB3aGVuZXZlciB3
ZSBkaWRuJ3QgZmluZCBhIHdyaXRhYmxlIGVudHJ5IGFueW1vcmUgKHlldCwg
b2YKY291cnNlLCBhdCBsZWFzdCBvbmUgcmVhZGFibGUgb25lKS4gQnV0IHdl
IG9ubHkgbmVlZCB0byBkbyB0aGlzIGlmIHdlCmFjdHVhbGx5IGRyb3BwZWQg
dGhlIGxhc3Qgd3JpdGFibGUgZW50cnksIG5vdCBpZiB0aGVyZSB3ZXJlIG5v
bmUgYWxyZWFkeQpiZWZvcmUuCgpUaGlzIGlzIHBhcnQgb2YgQ1ZFLTIwMjEt
Mjg2OTggLyBYU0EtMzgwLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2gg
PGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxs
IDxqZ3JhbGxAYW1hem9uLmNvbT4KCi0tLSBhL3hlbi9jb21tb24vZ3JhbnRf
dGFibGUuYworKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKQEAgLTM3
LDYgKzM3LDcgQEAKICNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNpbmNsdWRl
IDx4ZW4vcGFnaW5nLmg+CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4K
KyNpbmNsdWRlIDx4ZW4vcmFkaXgtdHJlZS5oPgogI2luY2x1ZGUgPHhlbi92
bWFwLmg+CiAjaW5jbHVkZSA8eGVuL25vc3BlYy5oPgogI2luY2x1ZGUgPHhz
bS94c20uaD4KQEAgLTgyLDggKzgzLDEzIEBAIHN0cnVjdCBncmFudF90YWJs
ZSB7CiAgICAgZ3JhbnRfc3RhdHVzX3QgICAgICAgKipzdGF0dXM7CiAgICAg
LyogQWN0aXZlIGdyYW50IHRhYmxlLiAqLwogICAgIHN0cnVjdCBhY3RpdmVf
Z3JhbnRfZW50cnkgKiphY3RpdmU7Ci0gICAgLyogTWFwcGluZyB0cmFja2lu
ZyB0YWJsZSBwZXIgdmNwdS4gKi8KKyAgICAvKiBIYW5kbGUtaW5kZXhlZCB0
cmFja2luZyB0YWJsZSBvZiBtYXBwaW5ncy4gKi8KICAgICBzdHJ1Y3QgZ3Jh
bnRfbWFwcGluZyAqKm1hcHRyYWNrOworICAgIC8qCisgICAgICogTUZOLWlu
ZGV4ZWQgdHJhY2tpbmcgdHJlZSBvZiBtYXBwaW5ncywgaWYgbmVlZGVkLiAg
Tm90ZSB0aGF0IHRoaXMgaXMKKyAgICAgKiBwcm90ZWN0ZWQgYnkgQGxvY2ss
IG5vdCBAbWFwdHJhY2tfbG9jay4KKyAgICAgKi8KKyAgICBzdHJ1Y3QgcmFk
aXhfdHJlZV9yb290IG1hcHRyYWNrX3RyZWU7CiAKICAgICAvKiBEb21haW4g
dG8gd2hpY2ggdGhpcyBzdHJ1Y3QgZ3JhbnRfdGFibGUgYmVsb25ncy4gKi8K
ICAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpkb21haW47CkBAIC01MDEsMzQg
KzUwNyw2IEBAIHN0YXRpYyBpbnQgZ2V0X3BhZ2VkX2ZyYW1lKHVuc2lnbmVk
IGxvbmcKICAgICByZXR1cm4gR05UU1Rfb2theTsKIH0KIAotc3RhdGljIGlu
bGluZSB2b2lkCi1kb3VibGVfZ3RfbG9jayhzdHJ1Y3QgZ3JhbnRfdGFibGUg
KmxndCwgc3RydWN0IGdyYW50X3RhYmxlICpyZ3QpCi17Ci0gICAgLyoKLSAg
ICAgKiBTZWUgbWFwa2luZCgpIGZvciB3aHkgdGhlIHdyaXRlIGxvY2sgaXMg
YWxzbyByZXF1aXJlZCBmb3IgdGhlCi0gICAgICogcmVtb3RlIGRvbWFpbi4K
LSAgICAgKi8KLSAgICBpZiAoIGxndCA8IHJndCApCi0gICAgewotICAgICAg
ICBncmFudF93cml0ZV9sb2NrKGxndCk7Ci0gICAgICAgIGdyYW50X3dyaXRl
X2xvY2socmd0KTsKLSAgICB9Ci0gICAgZWxzZQotICAgIHsKLSAgICAgICAg
aWYgKCBsZ3QgIT0gcmd0ICkKLSAgICAgICAgICAgIGdyYW50X3dyaXRlX2xv
Y2socmd0KTsKLSAgICAgICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOwotICAg
IH0KLX0KLQotc3RhdGljIGlubGluZSB2b2lkCi1kb3VibGVfZ3RfdW5sb2Nr
KHN0cnVjdCBncmFudF90YWJsZSAqbGd0LCBzdHJ1Y3QgZ3JhbnRfdGFibGUg
KnJndCkKLXsKLSAgICBncmFudF93cml0ZV91bmxvY2sobGd0KTsKLSAgICBp
ZiAoIGxndCAhPSByZ3QgKQotICAgICAgICBncmFudF93cml0ZV91bmxvY2so
cmd0KTsKLX0KLQogI2RlZmluZSBJTlZBTElEX01BUFRSQUNLX0hBTkRMRSBV
SU5UX01BWAogCiBzdGF0aWMgaW5saW5lIGdyYW50X2hhbmRsZV90CkBAIC05
NDgsNDEgKzkyNiwxNyBAQCBzdGF0aWMgc3RydWN0IGFjdGl2ZV9ncmFudF9l
bnRyeSAqZ3JhbnRfCiAgICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiB9
CiAKLSNkZWZpbmUgTUFQS0lORF9SRUFEIDEKLSNkZWZpbmUgTUFQS0lORF9X
UklURSAyCi1zdGF0aWMgdW5zaWduZWQgaW50IG1hcGtpbmQoCi0gICAgc3Ry
dWN0IGdyYW50X3RhYmxlICpsZ3QsIGNvbnN0IHN0cnVjdCBkb21haW4gKnJk
LCBtZm5fdCBtZm4pCi17Ci0gICAgc3RydWN0IGdyYW50X21hcHBpbmcgKm1h
cDsKLSAgICBncmFudF9oYW5kbGVfdCBoYW5kbGUsIGxpbWl0ID0gbGd0LT5t
YXB0cmFja19saW1pdDsKLSAgICB1bnNpZ25lZCBpbnQga2luZCA9IDA7Ci0K
LSAgICAvKgotICAgICAqIE11c3QgaGF2ZSB0aGUgbG9jYWwgZG9tYWluJ3Mg
Z3JhbnQgdGFibGUgd3JpdGUgbG9jayB3aGVuCi0gICAgICogaXRlcmF0aW5n
IG92ZXIgaXRzIG1hcHRyYWNrIGVudHJpZXMuCi0gICAgICovCi0gICAgQVNT
RVJUKHBlcmNwdV9yd19pc193cml0ZV9sb2NrZWQoJmxndC0+bG9jaykpOwot
ICAgIC8qCi0gICAgICogTXVzdCBoYXZlIHRoZSByZW1vdGUgZG9tYWluJ3Mg
Z3JhbnQgdGFibGUgd3JpdGUgbG9jayB3aGlsZQotICAgICAqIGNvdW50aW5n
IGl0cyBhY3RpdmUgZW50cmllcy4KLSAgICAgKi8KLSAgICBBU1NFUlQocGVy
Y3B1X3J3X2lzX3dyaXRlX2xvY2tlZCgmcmQtPmdyYW50X3RhYmxlLT5sb2Nr
KSk7Ci0KLSAgICBzbXBfcm1iKCk7Ci0KLSAgICBmb3IgKCBoYW5kbGUgPSAw
OyAhKGtpbmQgJiBNQVBLSU5EX1dSSVRFKSAmJiBoYW5kbGUgPCBsaW1pdDsg
aGFuZGxlKysgKQotICAgIHsKLSAgICAgICAgbWFwID0gJm1hcHRyYWNrX2Vu
dHJ5KGxndCwgaGFuZGxlKTsKLSAgICAgICAgaWYgKCAhKG1hcC0+ZmxhZ3Mg
JiAoR05UTUFQX2RldmljZV9tYXB8R05UTUFQX2hvc3RfbWFwKSkgfHwKLSAg
ICAgICAgICAgICBtYXAtPmRvbWlkICE9IHJkLT5kb21haW5faWQgKQotICAg
ICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmICggbWZuX2VxKF9hY3Rp
dmVfZW50cnkocmQtPmdyYW50X3RhYmxlLCBtYXAtPnJlZikubWZuLCBtZm4p
ICkKLSAgICAgICAgICAgIGtpbmQgfD0gbWFwLT5mbGFncyAmIEdOVE1BUF9y
ZWFkb25seSA/Ci0gICAgICAgICAgICAgICAgICAgIE1BUEtJTkRfUkVBRCA6
IE1BUEtJTkRfV1JJVEU7Ci0gICAgfQotCi0gICAgcmV0dXJuIGtpbmQ7Ci19
Cit1bmlvbiBtYXB0cmFja19ub2RlIHsKKyAgICBzdHJ1Y3QgeworICAgICAg
ICAvKiBSYWRpeCB0cmVlIHNsb3QgcG9pbnRlcnMgdXNlIHR3byBvZiB0aGUg
Yml0cy4gKi8KKyNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKKyAgICAg
ICAgdW5zaWduZWQgbG9uZyAgICA6IDI7CisjZW5kaWYKKyAgICAgICAgdW5z
aWduZWQgbG9uZyByZCA6IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsKKyAgICAg
ICAgdW5zaWduZWQgbG9uZyB3ciA6IEJJVFNfUEVSX0xPTkcgLyAyIC0gMTsK
KyAgICB9IGNudDsKKyAgICB1bnNpZ25lZCBsb25nIHJhdzsKK307CiAKIHN0
YXRpYyB2b2lkCiBtYXBfZ3JhbnRfcmVmKApAQCAtMTAwMSw3ICs5NTUsNiBA
QCBtYXBfZ3JhbnRfcmVmKAogICAgIHN0cnVjdCBncmFudF9tYXBwaW5nICpt
dDsKICAgICBncmFudF9lbnRyeV9oZWFkZXJfdCAqc2hhaDsKICAgICB1aW50
MTZfdCAqc3RhdHVzOwotICAgIGJvb2xfdCBuZWVkX2lvbW11OwogCiAgICAg
bGQgPSBjdXJyZW50LT5kb21haW47CiAKQEAgLTEyMjAsMzEgKzExNzMsNzUg
QEAgbWFwX2dyYW50X3JlZigKICAgICAgKiBhcyBtZW0tc2hhcmluZyBhbmQg
SU9NTVUgdXNlIGFyZSBpbmNvbXBhdGlibGUpLiBUaGUgZG9tX2lvIGNhc2Ug
d291bGQKICAgICAgKiBuZWVkIGNoZWNraW5nIHNlcGFyYXRlbHkgaWYgd2Ug
Y29tcGFyZWQgYWdhaW5zdCBvd25lciBoZXJlLgogICAgICAqLwotICAgIG5l
ZWRfaW9tbXUgPSBsZCAhPSByZCAmJiBnbnR0YWJfbmVlZF9pb21tdV9tYXBw
aW5nKGxkKTsKLSAgICBpZiAoIG5lZWRfaW9tbXUgKQorICAgIGlmICggbGQg
IT0gcmQgJiYgZ250dGFiX25lZWRfaW9tbXVfbWFwcGluZyhsZCkgKQogICAg
IHsKKyAgICAgICAgdW5pb24gbWFwdHJhY2tfbm9kZSBub2RlID0geworICAg
ICAgICAgICAgLmNudC5yZCA9ICEhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFk
b25seSksCisgICAgICAgICAgICAuY250LndyID0gIShvcC0+ZmxhZ3MgJiBH
TlRNQVBfcmVhZG9ubHkpLAorICAgICAgICB9OworICAgICAgICBpbnQgZXJy
OworICAgICAgICB2b2lkICoqc2xvdCA9IE5VTEw7CiAgICAgICAgIHVuc2ln
bmVkIGludCBraW5kOwogCi0gICAgICAgIGRvdWJsZV9ndF9sb2NrKGxndCwg
cmd0KTsKKyAgICAgICAgZ3JhbnRfd3JpdGVfbG9jayhsZ3QpOworCisgICAg
ICAgIGVyciA9IHJhZGl4X3RyZWVfaW5zZXJ0KCZsZ3QtPm1hcHRyYWNrX3Ry
ZWUsIG1mbl94KG1mbiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJhZGl4X3RyZWVfdWxvbmdfdG9fcHRyKG5vZGUucmF3KSk7CisgICAg
ICAgIGlmICggZXJyID09IC1FRVhJU1QgKQorICAgICAgICB7CisgICAgICAg
ICAgICBzbG90ID0gcmFkaXhfdHJlZV9sb29rdXBfc2xvdCgmbGd0LT5tYXB0
cmFja190cmVlLCBtZm5feChtZm4pKTsKKyAgICAgICAgICAgIGlmICggbGlr
ZWx5KHNsb3QpICkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBu
b2RlLnJhdyA9IHJhZGl4X3RyZWVfcHRyX3RvX3Vsb25nKCpzbG90KTsKKyAg
ICAgICAgICAgICAgICBlcnIgPSAtRUJVU1k7CisKKyAgICAgICAgICAgICAg
ICAvKiBVcGRhdGUgbm9kZSBvbmx5IHdoZW4gcmVmY291bnQgZG9lc24ndCBv
dmVyZmxvdy4gKi8KKyAgICAgICAgICAgICAgICBpZiAoIG9wLT5mbGFncyAm
IEdOVE1BUF9yZWFkb25seSA/ICsrbm9kZS5jbnQucmQKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICsrbm9k
ZS5jbnQud3IgKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgcmFkaXhfdHJlZV9yZXBsYWNlX3Nsb3Qoc2xvdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJl
ZV91bG9uZ190b19wdHIobm9kZS5yYXcpKTsKKyAgICAgICAgICAgICAgICAg
ICAgZXJyID0gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgQVNTRVJUX1VO
UkVBQ0hBQkxFKCk7CisgICAgICAgIH0KIAogICAgICAgICAvKgogICAgICAg
ICAgKiBXZSdyZSBub3QgdHJhbnNsYXRlZCwgc28gd2Uga25vdyB0aGF0IGRm
bnMgYW5kIG1mbnMgYXJlCiAgICAgICAgICAqIHRoZSBzYW1lIHRoaW5ncywg
c28gdGhlIElPTU1VIGVudHJ5IGlzIGFsd2F5cyAxLXRvLTEuCiAgICAgICAg
ICAqLwotICAgICAgICBraW5kID0gbWFwa2luZChsZ3QsIHJkLCBtZm4pOwot
ICAgICAgICBpZiAoICEob3AtPmZsYWdzICYgR05UTUFQX3JlYWRvbmx5KSAm
JgotICAgICAgICAgICAgICEoa2luZCAmIE1BUEtJTkRfV1JJVEUpICkKKyAg
ICAgICAgaWYgKCAhKG9wLT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSkgJiYg
bm9kZS5jbnQud3IgPT0gMSApCiAgICAgICAgICAgICBraW5kID0gSU9NTVVG
X3JlYWRhYmxlIHwgSU9NTVVGX3dyaXRhYmxlOwotICAgICAgICBlbHNlIGlm
ICggIWtpbmQgKQorICAgICAgICBlbHNlIGlmICggKG9wLT5mbGFncyAmIEdO
VE1BUF9yZWFkb25seSkgJiYKKyAgICAgICAgICAgICAgICAgIG5vZGUuY250
LnJkID09IDEgJiYgIW5vZGUuY250LndyICkKICAgICAgICAgICAgIGtpbmQg
PSBJT01NVUZfcmVhZGFibGU7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAg
IGtpbmQgPSAwOwotICAgICAgICBpZiAoIGtpbmQgJiYgaW9tbXVfbGVnYWN5
X21hcChsZCwgX2RmbihtZm5feChtZm4pKSwgbWZuLCAwLCBraW5kKSApCisg
ICAgICAgIGlmICggZXJyIHx8CisgICAgICAgICAgICAgKGtpbmQgJiYgaW9t
bXVfbGVnYWN5X21hcChsZCwgX2RmbihtZm5feChtZm4pKSwgbWZuLCAwLCBr
aW5kKSkgKQogICAgICAgICB7Ci0gICAgICAgICAgICBkb3VibGVfZ3RfdW5s
b2NrKGxndCwgcmd0KTsKKyAgICAgICAgICAgIGlmICggIWVyciApCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCBzbG90ICkKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIG9wLT5mbGFncyAm
IEdOVE1BUF9yZWFkb25seSA/IG5vZGUuY250LnJkLS0KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5j
bnQud3ItLTsKKyAgICAgICAgICAgICAgICAgICAgcmFkaXhfdHJlZV9yZXBs
YWNlX3Nsb3Qoc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmFkaXhfdHJlZV91bG9uZ190b19wdHIobm9kZS5y
YXcpKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgICAgICByYWRpeF90cmVlX2RlbGV0ZSgmbGd0
LT5tYXB0cmFja190cmVlLCBtZm5feChtZm4pKTsKKyAgICAgICAgICAgIH0K
KwogICAgICAgICAgICAgcmMgPSBHTlRTVF9nZW5lcmFsX2Vycm9yOwotICAg
ICAgICAgICAgZ290byB1bmRvX291dDsKICAgICAgICAgfQorCisgICAgICAg
IGdyYW50X3dyaXRlX3VubG9jayhsZ3QpOworCisgICAgICAgIGlmICggcmMg
IT0gR05UU1Rfb2theSApCisgICAgICAgICAgICBnb3RvIHVuZG9fb3V0Owog
ICAgIH0KIAogICAgIFRSQUNFXzFEKFRSQ19NRU1fUEFHRV9HUkFOVF9NQVAs
IG9wLT5kb20pOwpAQCAtMTI1MiwxMCArMTI0OSw2IEBAIG1hcF9ncmFudF9y
ZWYoCiAgICAgLyoKICAgICAgKiBBbGwgbWFwdHJhY2sgZW50cnkgdXNlcnMg
Y2hlY2sgbXQtPmZsYWdzIGZpcnN0IGJlZm9yZSB1c2luZyB0aGUKICAgICAg
KiBvdGhlciBmaWVsZHMgc28ganVzdCBlbnN1cmUgdGhlIGZsYWdzIGZpZWxk
IGlzIHN0b3JlZCBsYXN0LgotICAgICAqCi0gICAgICogSG93ZXZlciwgaWYg
Z250dGFiX25lZWRfaW9tbXVfbWFwcGluZygpIHRoZW4gdGhpcyB3b3VsZCBy
YWNlCi0gICAgICogd2l0aCBhIGNvbmN1cnJlbnQgbWFwa2luZCgpIGNhbGwg
KG9uIGFuIHVubWFwLCBmb3IgZXhhbXBsZSkKLSAgICAgKiBhbmQgYSBsb2Nr
IGlzIHJlcXVpcmVkLgogICAgICAqLwogICAgIG10ID0gJm1hcHRyYWNrX2Vu
dHJ5KGxndCwgaGFuZGxlKTsKICAgICBtdC0+ZG9taWQgPSBvcC0+ZG9tOwpA
QCAtMTI2Myw5ICsxMjU2LDYgQEAgbWFwX2dyYW50X3JlZigKICAgICBzbXBf
d21iKCk7CiAgICAgd3JpdGVfYXRvbWljKCZtdC0+ZmxhZ3MsIG9wLT5mbGFn
cyk7CiAKLSAgICBpZiAoIG5lZWRfaW9tbXUgKQotICAgICAgICBkb3VibGVf
Z3RfdW5sb2NrKGxndCwgcmd0KTsKLQogICAgIG9wLT5kZXZfYnVzX2FkZHIg
PSBtZm5fdG9fbWFkZHIobWZuKTsKICAgICBvcC0+aGFuZGxlICAgICAgID0g
aGFuZGxlOwogICAgIG9wLT5zdGF0dXMgICAgICAgPSBHTlRTVF9va2F5OwpA
QCAtMTQ4NywxOSArMTQ3NywzNCBAQCB1bm1hcF9jb21tb24oCiAgICAgLyog
U2VlIHRoZSByZXNwZWN0aXZlIGNvbW1lbnQgaW4gbWFwX2dyYW50X3JlZigp
LiAqLwogICAgIGlmICggcmMgPT0gR05UU1Rfb2theSAmJiBsZCAhPSByZCAm
JiBnbnR0YWJfbmVlZF9pb21tdV9tYXBwaW5nKGxkKSApCiAgICAgewotICAg
ICAgICB1bnNpZ25lZCBpbnQga2luZDsKKyAgICAgICAgdm9pZCAqKnNsb3Q7
CisgICAgICAgIHVuaW9uIG1hcHRyYWNrX25vZGUgbm9kZTsKICAgICAgICAg
aW50IGVyciA9IDA7CiAKLSAgICAgICAgZG91YmxlX2d0X2xvY2sobGd0LCBy
Z3QpOworICAgICAgICBncmFudF93cml0ZV9sb2NrKGxndCk7CisgICAgICAg
IHNsb3QgPSByYWRpeF90cmVlX2xvb2t1cF9zbG90KCZsZ3QtPm1hcHRyYWNr
X3RyZWUsIG1mbl94KG9wLT5tZm4pKTsKKyAgICAgICAgbm9kZS5yYXcgPSBs
aWtlbHkoc2xvdCkgPyByYWRpeF90cmVlX3B0cl90b191bG9uZygqc2xvdCkg
OiAwOworCisgICAgICAgIC8qIFJlZmNvdW50IG11c3Qgbm90IHVuZGVyZmxv
dy4gKi8KKyAgICAgICAgaWYgKCAhKGZsYWdzICYgR05UTUFQX3JlYWRvbmx5
ID8gbm9kZS5jbnQucmQtLQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOiBub2RlLmNudC53ci0tKSApCisgICAgICAgICAgICBC
VUcoKTsKIAotICAgICAgICBraW5kID0gbWFwa2luZChsZ3QsIHJkLCBvcC0+
bWZuKTsKLSAgICAgICAgaWYgKCAha2luZCApCisgICAgICAgIGlmICggIW5v
ZGUucmF3ICkKICAgICAgICAgICAgIGVyciA9IGlvbW11X2xlZ2FjeV91bm1h
cChsZCwgX2RmbihtZm5feChvcC0+bWZuKSksIDApOwotICAgICAgICBlbHNl
IGlmICggIShraW5kICYgTUFQS0lORF9XUklURSkgKQorICAgICAgICBlbHNl
IGlmICggIShmbGFncyAmIEdOVE1BUF9yZWFkb25seSkgJiYgIW5vZGUuY250
LndyICkKICAgICAgICAgICAgIGVyciA9IGlvbW11X2xlZ2FjeV9tYXAobGQs
IF9kZm4obWZuX3gob3AtPm1mbikpLCBvcC0+bWZuLCAwLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBJT01NVUZfcmVhZGFibGUpOwog
Ci0gICAgICAgIGRvdWJsZV9ndF91bmxvY2sobGd0LCByZ3QpOworICAgICAg
ICBpZiAoIGVyciApCisgICAgICAgICAgICA7CisgICAgICAgIGVsc2UgaWYg
KCAhbm9kZS5yYXcgKQorICAgICAgICAgICAgcmFkaXhfdHJlZV9kZWxldGUo
JmxndC0+bWFwdHJhY2tfdHJlZSwgbWZuX3gob3AtPm1mbikpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWRpeF90cmVlX3JlcGxhY2Vfc2xvdChz
bG90LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFk
aXhfdHJlZV91bG9uZ190b19wdHIobm9kZS5yYXcpKTsKKworICAgICAgICBn
cmFudF93cml0ZV91bmxvY2sobGd0KTsKIAogICAgICAgICBpZiAoIGVyciAp
CiAgICAgICAgICAgICByYyA9IEdOVFNUX2dlbmVyYWxfZXJyb3I7CkBAIC0x
OTUxLDYgKzE5NTYsOCBAQCBpbnQgZ3JhbnRfdGFibGVfaW5pdChzdHJ1Y3Qg
ZG9tYWluICpkLCBpCiAgICAgICAgIGd0LT5tYXB0cmFjayA9IHZ6YWxsb2Mo
Z3QtPm1heF9tYXB0cmFja19mcmFtZXMgKiBzaXplb2YoKmd0LT5tYXB0cmFj
aykpOwogICAgICAgICBpZiAoIGd0LT5tYXB0cmFjayA9PSBOVUxMICkKICAg
ICAgICAgICAgIGdvdG8gb3V0OworCisgICAgICAgIHJhZGl4X3RyZWVfaW5p
dCgmZ3QtPm1hcHRyYWNrX3RyZWUpOwogICAgIH0KIAogICAgIC8qIFNoYXJl
ZCBncmFudCB0YWJsZS4gKi8KQEAgLTM3MzQsNiArMzc0MSw3IEBAIGludCBn
bnR0YWJfcmVsZWFzZV9tYXBwaW5ncyhzdHJ1Y3QgZG9tYWkKICAgICBmb3Ig
KCBoYW5kbGUgPSBndC0+bWFwdHJhY2tfbGltaXQ7IGhhbmRsZTsgKQogICAg
IHsKICAgICAgICAgdW5zaWduZWQgaW50IGNsZWFyX2ZsYWdzID0gMDsKKyAg
ICAgICAgbWZuX3QgbWZuOwogCiAgICAgICAgIC8qCiAgICAgICAgICAqIERl
YWwgd2l0aCBmdWxsIHBhZ2VzIHN1Y2ggdGhhdCB0aGVpciBmcmVlaW5nIChp
biB0aGUgYm9keSBvZiB0aGUKQEAgLTM4MzksMTcgKzM4NDcsMzEgQEAgaW50
IGdudHRhYl9yZWxlYXNlX21hcHBpbmdzKHN0cnVjdCBkb21haQogICAgICAg
ICBpZiAoIGNsZWFyX2ZsYWdzICkKICAgICAgICAgICAgIGdudHRhYl9jbGVh
cl9mbGFncyhyZCwgY2xlYXJfZmxhZ3MsIHN0YXR1cyk7CiAKKyAgICAgICAg
bWZuID0gYWN0LT5tZm47CisKICAgICAgICAgYWN0aXZlX2VudHJ5X3JlbGVh
c2UoYWN0KTsKICAgICAgICAgZ3JhbnRfcmVhZF91bmxvY2socmd0KTsKIAog
ICAgICAgICByY3VfdW5sb2NrX2RvbWFpbihyZCk7CiAKICAgICAgICAgbWFw
LT5mbGFncyA9IDA7CisKKyAgICAgICAgLyoKKyAgICAgICAgICogVGhpcyBp
cyBleGNlc3NpdmUgaW4gdGhhdCBhIHNpbmdsZSBzdWNoIGNhbGwgd291bGQg
c3VmZmljZSBwZXIKKyAgICAgICAgICogbWFwcGVkIE1GTiAob3Igbm9uZSBh
dCBhbGwsIGlmIG5vIGVudHJ5IHdhcyBldmVyIGluc2VydGVkKS4gQnV0IGl0
CisgICAgICAgICAqIHNob3VsZCBiZSB0aGUgY29tbW9uIGNhc2UgZm9yIGFu
IE1GTiB0byBiZSBtYXBwZWQganVzdCBvbmNlLCBhbmQKKyAgICAgICAgICog
dGhpcyB3YXkgd2UgZG9uJ3QgbmVlZCB0byBmdXJ0aGVyIG1haW50YWluIHRo
ZSBjb3VudGVycy4gV2UgYWxzbworICAgICAgICAgKiBkb24ndCB3YW50IHRv
IGxlYXZlIGNsZWFuaW5nIHVwIG9mIHRoZSB0cmVlIGFzIGEgd2hvbGUgdG8g
dGhlIGVuZAorICAgICAgICAgKiBvZiB0aGUgZnVuY3Rpb24sIGFzIHRoaXMg
Y291bGQgdGFrZSBxdWl0ZSBzb21lIHRpbWUuCisgICAgICAgICAqLworICAg
ICAgICByYWRpeF90cmVlX2RlbGV0ZSgmZ3QtPm1hcHRyYWNrX3RyZWUsIG1m
bl94KG1mbikpOwogICAgIH0KIAogICAgIGd0LT5tYXB0cmFja19saW1pdCA9
IDA7CiAgICAgRlJFRV9YRU5IRUFQX1BBR0UoZ3QtPm1hcHRyYWNrWzBdKTsK
IAorICAgIHJhZGl4X3RyZWVfZGVzdHJveSgmZ3QtPm1hcHRyYWNrX3RyZWUs
IE5VTEwpOworCiAgICAgcmV0dXJuIDA7CiB9CiAKLS0tIGEveGVuL2luY2x1
ZGUveGVuL3JhZGl4LXRyZWUuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vcmFk
aXgtdHJlZS5oCkBAIC0xOTAsNiArMTkwLDI1IEBAIHN0YXRpYyBpbmxpbmUg
aW50IHJhZGl4X3RyZWVfcHRyX3RvX2ludCgKICAgICByZXR1cm4gKGludCko
KGxvbmcpcHRyID4+IDIpOwogfQogCisvKioKKyAqIHJhZGl4X3RyZWVfe3Vs
b25nX3RvX3B0cixwdHJfdG9fdWxvbmd9OgorICoKKyAqIFNhbWUgZm9yIHVu
c2lnbmVkIGxvbmcgdmFsdWVzLiBCZXdhcmUgdGhvdWdoIHRoYXQgb25seSBC
SVRTX1BFUl9MT05HLTIKKyAqIGJpdHMgYXJlIGFjdHVhbGx5IHVzYWJsZSBm
b3IgdGhlIHZhbHVlLgorICovCitzdGF0aWMgaW5saW5lIHZvaWQgKnJhZGl4
X3RyZWVfdWxvbmdfdG9fcHRyKHVuc2lnbmVkIGxvbmcgdmFsKQoreworICAg
IHVuc2lnbmVkIGxvbmcgcHRyID0gKHZhbCA8PCAyKSB8IDB4MjsKKyAgICBB
U1NFUlQoKHB0ciA+PiAyKSA9PSB2YWwpOworICAgIHJldHVybiAodm9pZCAq
KXB0cjsKK30KKworc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHJhZGl4
X3RyZWVfcHRyX3RvX3Vsb25nKHZvaWQgKnB0cikKK3sKKyAgICBBU1NFUlQo
KCh1bnNpZ25lZCBsb25nKXB0ciAmIDB4MykgPT0gMHgyKTsKKyAgICByZXR1
cm4gKHVuc2lnbmVkIGxvbmcpcHRyID4+IDI7Cit9CisKIGludCByYWRpeF90
cmVlX2luc2VydChzdHJ1Y3QgcmFkaXhfdHJlZV9yb290ICosIHVuc2lnbmVk
IGxvbmcsIHZvaWQgKik7CiB2b2lkICpyYWRpeF90cmVlX2xvb2t1cChzdHJ1
Y3QgcmFkaXhfdHJlZV9yb290ICosIHVuc2lnbmVkIGxvbmcpOwogdm9pZCAq
KnJhZGl4X3RyZWVfbG9va3VwX3Nsb3Qoc3RydWN0IHJhZGl4X3RyZWVfcm9v
dCAqLCB1bnNpZ25lZCBsb25nKTsK

--=separator--


From xen-users-bounces@lists.xenproject.org Wed Sep 01 14:16:42 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 01 Sep 2021 14:16:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.176460.321103 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLR1x-0007uP-6c; Wed, 01 Sep 2021 14:15:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 176460.321103; Wed, 01 Sep 2021 14:15:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLR1x-0007uH-2j; Wed, 01 Sep 2021 14:15:57 +0000
Received: by outflank-mailman (input) for mailman id 176460;
 Wed, 01 Sep 2021 14:15:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rqR/=NX=citrix.com=Andrew.Cooper3@srs-us1.protection.inumbo.net>)
 id 1mLR1v-0007uB-Dm
 for xen-users@lists.xen.org; Wed, 01 Sep 2021 14:15:55 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5d5064de-aaff-4d0b-b2e1-04820891abd9;
 Wed, 01 Sep 2021 14:15:53 +0000 (UTC)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 5d5064de-aaff-4d0b-b2e1-04820891abd9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1630505753;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=9G1ixSwpVVNGO1qRAX6VZalDZxApZgkQDoR8Qn+vkJ8=;
  b=TsbSjKru0uqxfW7Z2gI3J5b+LdmwoiasA1xw0FDNYqTt+Mv1YCedGyHI
   QKUeJt26GR8aLlhAUCgjIfb0hO+6mIjjyEDbbtveSot1usJPJuvWmQyNf
   2NsLl/xNqgMNizd+38WZ/AqU4tlGLuPUtfuw3TB/y2nBpx0hEqFmTYbmu
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: jReWgYl4LhKRC49tJO1X6kLz9XPWilzcEjx7uo+RU7C/pmTAF/49A7VNUznIYMmgmPzJhGwAMD
 b7kjXB2GgNsP2V+8FiD78hKAufV6WrT9K94ggJ7ZWWoJjjlDFbokr0R7KWtgmedrDCW0bed6es
 qtNVefiGvOCBv8n2wshBZEUN+JvxMpAfIIrfov99781KqSeY29eSxyGaWpbzj4wt9+TIH8qU3K
 pa0QvEdNb/uIfoc3SPuysCX0LiUVbjT2ZQ77VsiGjUEbgyq0dpvIzE0VnxPc40UJhL0k665V0v
 USu7frJixBq6jcAUVLjaSYOc
X-SBRS: 5.1
X-MesageID: 53539810
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:z7uTmqhJkhqUKspSXCnSq/OhrnBQXgoji2hC6mlwRA09TyX5ra
 qTdZUgpH3JYVkqNE3I9eruBEDiewK+yXcW2+gs1N6ZNWGKhILBFupfBODZowEIdReRygcn79
 YET0B/YueAdmSTj6zBkXOF+wBL+qj7zEiq792us0uEVWtRGsVdB58SMHfiLqVxLjM2YqbQRP
 Knl6x6TyPLQwVvUviG
X-IronPort-AV: E=Sophos;i="5.84,369,1620705600"; 
   d="scan'208";a="53539810"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fYbYmCJH+WJklh4o8rDBPVj/33lbhgYmnWm0ogsc4QS2Jm4UVOtgaK8C3ylx3hoXIq+KNLqqCowcF7OdNKllOV+Mw9wob6TVf1Bpn2QZxzHi4Hb/WQikuS4+Zo8S3vZl4e2GZqUAg9jWi4L9OXnYD+l/WjxTMQK2AxAMcm+JcO7q5v4QJ9pq4hEXD66g+sYbwg7uFmOWnt8U2j+Rm+bN0+8KFjLPsxnKlDv2tVwYt3+y2V9jLsWspy/xtAaYn+QvIsL8ZwDwpABJcput94pmiGPlE5yMW64NMY9C3QILsGvRbkLGNGYL9JT8EGmcDB0goJjY01O1TpMSXO20CXMwLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CiBzRMexSlFVfa1By3ARHlf7/NosDQULtDXwjFeft14=;
 b=Wa3zR+FNV8Z1gbEQFgdsf/oFNVGQyg8yediOTYI1UeP+0BySo1ZIQ8zdcLi+2gJnCjgXUek026qJiBBSjDl2Q+Uqk0dPY85EzqKtrCTFX5Y2J6KpqATdp4tbnms/pP6XfvOMMtCB8nq3FzC6UaHisIOGjyemi18EijjDZWp7KfGTUFyAEQncCfUoDSlDw8UZDy6Q23RkyHBtNAViSf+La6lcHLp+ljyYob+o1pQ3WPDOW1znNeSq67W3GU2AaworQvC+OmMFOXf5nEST0Xs764pwcMOWDgOLbSAD43D2l6o5v0/4y8OoCbKUUB0+AH2W158VM1c1AeOM13JUKNXifw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CiBzRMexSlFVfa1By3ARHlf7/NosDQULtDXwjFeft14=;
 b=VdL0Rp8yod+mjLG0Tisy0+BaIegQ1GRk76S/9mYeOKVX+cklOFIFD0yQ9Q4Xj/tqRh3EMPbLlqLtdmwbQpFP7R4tNTio46zyujxWcByKY6SYvBgONu4Zvzcz4Unr5CBzageoXlayIjkmExIFI5MWNCnPfJv7rQA4O1X402Gs25M=
To: Jason Andryuk <jandryuk@gmail.com>, Xen.org security team
	<security@xen.org>
CC: <xen-announce@lists.xen.org>, <xen-devel@lists.xen.org>,
	<xen-users@lists.xen.org>, <oss-security@lists.openwall.com>, "Xen.org
 security team" <security-team-members@xen.org>
References: <E1mLMZy-0006TJ-Rw@xenbits.xenproject.org>
 <CAKf6xpsAz7oPX+PdZokm+BAqreqL8rnrAd9UYvdz=F0M-bcMUQ@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen Security Advisory 378 v3
 (CVE-2021-28694,CVE-2021-28695,CVE-2021-28696) - IOMMU page mapping issues on
 x86
Message-ID: <43ba10b9-4b20-81d4-6bdc-18f9c2e2e0bc@citrix.com>
Date: Wed, 1 Sep 2021 15:15:42 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.13.0
In-Reply-To: <CAKf6xpsAz7oPX+PdZokm+BAqreqL8rnrAd9UYvdz=F0M-bcMUQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0073.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:138::6) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 233b439b-3171-444e-d1fe-08d96d53000b
X-MS-TrafficTypeDiagnostic: BYAPR03MB3861:
X-Microsoft-Antispam-PRVS: <BYAPR03MB3861272ADC8D5D63FA919C73BACD9@BYAPR03MB3861.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: YlrVzEdOwyd4p4YyT1+xDKvUIYH2vTA4KKrgtaoryH3DoBaZ46y8fKkPSzQ9uzSu9oysNpyIceLKBiVg/7kT7fGthqRZr3977LbToSj9wmXxb+8uHdgBOIbjnSOI5UV4jJ2Sfa6tDvZjl9SHipB1aAsEFfzijD/eVN3zDalPBq1SKD0v8yufF2tH8YOtR0r+rd7109tZNVbTY2TbU+QMYNhnHccYRG4OujO2Nc5Wm5N5E6E0eML9Uji+BWZvaX+RW4ENC042hiOg8Z+VVDRzQzJMXmTvcFwsSX3uFFmrCzq6H/3E6I6i8oowAJoyRbKcAfxjRJHjAqmhuNnCAOjGtMBwnsT7yZiRdFktmioSOEILIluQM9hA8t7SRKxEOZ86YUataMsPnUPgS/ZxL4nky1JjCmINEQjrLI9fAoSrPO5uJ5czYxUN8+xY6xxOxZ+hjZK34xx1aGJ85XvncNKNNoSwrDfxMsPIxqtr0wBHhfWwnFw5m2kmVTpOj+nCCiM+cHphpM0nxDUnEcV2AoajXtD1aEC/4Y6A8zZn1CBJvuCxUyhNJkN7BhZFCdU0jPqddc4BxmJiyYqSv1bASq8MhT+ZA406dxX28jwZoMHAqONhEPVRnWLTwMzYLsHYeuBgCatBg5hpof7yldRsy91f1GPraIgZZce35lotcc8QDvj+b+2ha/lUUmgxWnKf5oUYXa2rQMSJCBT38c/VY0HzbH1PzkiqFWrS0MqiJNYBjAE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(376002)(39860400002)(396003)(366004)(38100700002)(31686004)(86362001)(6486002)(5660300002)(8676002)(66946007)(8936002)(83380400001)(6666004)(31696002)(66556008)(66476007)(15650500001)(4326008)(316002)(110136005)(16576012)(26005)(36756003)(186003)(478600001)(956004)(55236004)(53546011)(2906002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bG9HcXcrVkIxOHNFSXZBWjVwTUQ1d0NPWDVZSUh5cHptQ2V5K3RRQ3RDSVJH?=
 =?utf-8?B?TjU0UGV2UWt3SFYwNlVkdlllbTFtMVRIVjdNc2diYmVGSWtRTjJLMHpnaU9u?=
 =?utf-8?B?RGxDVm13Rm5PdGoxR2ZWVXRBRVV5bWVWZlRadDdMSyszcHhPRXdLM082NG4y?=
 =?utf-8?B?U20zM1dVRXEwbU04TWlRMk5ZeUFHdkJpRHN0UEJlc1dlV0c0WWRYUDRCa3pv?=
 =?utf-8?B?NVBBSG5HeHlPbS9KcjBhMFQySU83YVVYUlppbzlsYm9hN0JyYkNsb3Y2TDMw?=
 =?utf-8?B?dmNDK25KdDhlVDVjTHpsRG9WWkVkQWhEaG9CMng3MUF4L0ZuWWtKc1VpVGwx?=
 =?utf-8?B?VkhveGlJZGxZbVBkNXU1VlBSSGo0SXNyOHNOZ1BRa1l3cGpUcE1YY2ttZFlE?=
 =?utf-8?B?c21SNllQVncveDJSN1lIazlnZ3NGdFA1TklnMDUzNVozZnVDMjBIakEvcVMv?=
 =?utf-8?B?RmM3NWcyV2llcnBCSWN5RXVLMTBNZExSR0xHRFlMMHNsMms3V3ltTXJnQWZT?=
 =?utf-8?B?U3Z3ZWIzT2hzRks4MlNNVC82eFlUUy9KRm1qd3RndnMzLzc0aS9JYVZ4UUYv?=
 =?utf-8?B?UWh1YUUveW1EQytyMkFsQnNuYkJTcUhGUWN6MDkxZE1JTzlRRWQ1THIrRDJp?=
 =?utf-8?B?LzVnSUFpNVB2Q210bE9nVitKMXl1ckgrN1Jtd3A2VHhOV3VtcG9GSG56Q2xk?=
 =?utf-8?B?NVZmWmFydFV1aytUZDRtbW8vOG1yYlkyMlVVYUduMXMzQ01Tc09CSzhQNkVD?=
 =?utf-8?B?UGZVamtFaW41NzljOHJFNW5nWHJ3N1dyM2o0aHVua1ZEVHFjbEVOaUc4RVJW?=
 =?utf-8?B?cjdwb3dURGthM1FOSVRGU1M5bUwzNlFXY0NBWjk3Wkt0UCtqYlNzV0ltZnRZ?=
 =?utf-8?B?bGRycXZhano5dEswYzY1TUlPV3NzS2grQXJIbjZTZnk5RWN0dVY5K3MxVGtN?=
 =?utf-8?B?V2VwdEw2cWZOWTNjOUtaTXRCQ2R4UUdFbzZBVWE0NktSdlZzQXFFcHdkRGkr?=
 =?utf-8?B?NWdXc1hoQmJRS0dTSE9mZ3gwbWgzaEczSjQxTWlNYTFxNUxFV1U0TlpPWStE?=
 =?utf-8?B?alJoZUttcXBFMkVzN2JMM0lDWVpSTDJ1THNaMVNjdk5QOXlSSW5OQ0FrTjJJ?=
 =?utf-8?B?VGs1bWwrS0xhZW0xNnlIU2pzL3NNRkVCbXdaTXJwWnJnTzBKbVJpcHJGdzN3?=
 =?utf-8?B?Vy9HYlljTExCYlh4VFNTZDVvc3h5U29HNTdSV1k2cXZ2L3lQRnBmZFFEcXFx?=
 =?utf-8?B?b3h5NUwvZm40YzlOeG5lbmlORnNsa3luSVdpMnBUaG1rVFdDQXFtQmdmQUtC?=
 =?utf-8?B?UWpJMENqRHdqbHZ5c1I1UmN4dFc3NTJzRy9lblVPMXpnUURJbHFTUmtvdU1M?=
 =?utf-8?B?bVlabGxiVU13SUVLUGh2T3hFbFlCTWZ5akFwUVNjRU9ycTRqR2Z1VkhBRTVW?=
 =?utf-8?B?aFpmY3pDcHl3ZjBaYWU0eC80SDRlMDEweWtvVXo0SjBUeFhrS1hMenljU1dF?=
 =?utf-8?B?V290azY4clBRTHFEYXRoMUxJeVdYVzNHTHdNUEdHU0dNSkI1SCtBemdkb1JU?=
 =?utf-8?B?c1Z5dlpuVlBBeG54dkdIOHNkcXBlakw3TmpYTkhSbGNUa3QrT053eSt6a3Nm?=
 =?utf-8?B?RW1Ta3VLNitPbkY4eGlzK3drMDVIM1VqTWtOUDY3VWhVQ2xlTUFOS3JGSzA0?=
 =?utf-8?B?M2VIelhGZ0VPYzVvSDc3UEs2R3NiVjM5Wld4SllzeERqOHQyTTQ3NXNza0x4?=
 =?utf-8?Q?0DErMNqBZ9c7rzkGe8H8u5vpqTcCFSAn3gpVEJm?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 233b439b-3171-444e-d1fe-08d96d53000b
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2021 14:15:50.1472
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Js9mm6UeiYw54KeNyeuL1/3dX+wMRzRqyXCYzraVNrPAlbz+LVflrRnXipHl6auEZ3JCC9BqUqRaJl448oUYifNePqRHFx20mzllBhakcgI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3861
X-OriginatorOrg: citrix.com

On 01/09/2021 14:22, Jason Andryuk wrote:
> On Wed, Sep 1, 2021 at 5:34 AM Xen.org security team <security@xen.org> w=
rote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA256
>>
>>  Xen Security Advisory CVE-2021-28694,CVE-2021-28695,CVE-2021-28696 / XS=
A-378
>>                                    version 3
>>
>>                    IOMMU page mapping issues on x86
>>
>> UPDATES IN VERSION 3
>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>
>> Warn about dom0=3Dpvh breakage in Resolution section.
>>
>> ISSUE DESCRIPTION
>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>
>> Both AMD and Intel allow ACPI tables to specify regions of memory
>> which should be left untranslated, which typically means these
>> addresses should pass the translation phase unaltered.  While these
>> are typically device specific ACPI properties, they can also be
>> specified to apply to a range of devices, or even all devices.
>>
>> On all systems with such regions Xen failed to prevent guests from
>> undoing/replacing such mappings (CVE-2021-28694).
> Hi,
>
> Is there a way to identify if a system's ACPI tables have untranslated
> regions?  Does it show up in xen or linux dmesg or can it be
> identified in sysfs?

It's possible, but a little convoluted to do.=C2=A0 In dom0 (and in an empt=
y
directory) you want:

acpidump > acpi.dmp
acpixtract -a acpi.dmp

On Intel, open up rmad.dat and hexedit the first 4 bytes from RMAD to
DMAR (yes - really - this is how we stop the dom0 kernel from trying to
poke the IOMMU directly.)

Then disassemble (iasl -d) either rmad.dat or ivrs.dat depending on
whether you're on Intel or AMD.

On Intel, you're looking for Reserved Memory Regions, while on AMD
you're looking for IVMD ranges (specifically, types 20 thru 22)

These, if present, describe a range of memory needing identity mapping,
and a scope of the PCI device(s) the range applies to.

~Andrew



From xen-users-bounces@lists.xenproject.org Thu Sep 02 15:28:13 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 02 Sep 2021 15:28:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.176401.322736 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLod5-0008Mc-FW; Thu, 02 Sep 2021 15:27:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 176401.322736; Thu, 02 Sep 2021 15:27:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLod5-0008MT-BK; Thu, 02 Sep 2021 15:27:51 +0000
Received: by outflank-mailman (input) for mailman id 176401;
 Wed, 01 Sep 2021 13:22:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gczT=NX=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1mLQCI-0006TY-KM
 for xen-users@lists.xen.org; Wed, 01 Sep 2021 13:22:34 +0000
Received: from mail-lf1-x12d.google.com (unknown [2a00:1450:4864:20::12d])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cf2850d5-6dd5-40f8-bffe-1da694fcf464;
 Wed, 01 Sep 2021 13:22:28 +0000 (UTC)
Received: by mail-lf1-x12d.google.com with SMTP id t19so4487310lfe.13;
 Wed, 01 Sep 2021 06:22:28 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: cf2850d5-6dd5-40f8-bffe-1da694fcf464
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20210112;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=jaFQ1dJz/0jVDnUJDux1CudavpmIQDH+qRgNmOHy2kw=;
        b=V08N3wY0tEFQVk3cnI/b65MC6y/NleF6UKnkKSF4FljmBjrUCVrMazguZLA7LdjAmT
         +ukjleA/aXsaghg8GdsMYuAgm5c+MPEAreIaSQmdzDGpoYxtukbwGOq6AUzSQwEpTY7+
         AeRpjO4diPCC57slSCKz6Up8XUfN5G55R75Z0ghi/XJHYQzGmDGp0k5rosewss7I0J/f
         I3lzZ16I+iwkRH8e8zHzRSxcJ5rmOUhqIQSEZfM6y6/Rh5VlbXhlnuTgeV0C1Ud4mU1N
         SF3wfplIkh8EJ7NydDk2HhzRMfGvJ4zuckdXpFbwpiK3mBrr//Kfse12BEWAhzVvi6fQ
         5kXg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=jaFQ1dJz/0jVDnUJDux1CudavpmIQDH+qRgNmOHy2kw=;
        b=JrpFxVaBMe8DrcL/LAJ8shCaXJ4Ue23W3hoyGVRIfapRy/ZvbNVLLlSjeZSgktxEDL
         Vh2Sp7eI/S1m6J+aOzTPhK/OjKSQv0DUsS8VLE/ER2OXJb5e7DrDEUAfcWFKgCUWBIJ9
         s/Kla6Em+S3TDU16XXV5I2ZSffiv70n7ZR6GPpIqH7YWe4QeKI1cBHkGYPUgPG9WhT98
         qUpcueZVT0jFl0KmEqCN6AjuV272lFqDw+t4pBkERk2Z1dpyDJJF6Upf9ouXhwuLQxhT
         NxWj42tEw9w3UQ1iaCguh0upNstAu2iIOjf088UvzbfhRVoDPW5yNR+VLsjcSeD6swWs
         81Xg==
X-Gm-Message-State: AOAM531FlJMmjORy+uaUxkviFED/ekdPu42SfqE9CgrRoMpouTj6ERDZ
	+BbtjZgMJBUCUdkKkArhpvZNhTj6cG5Ld3/jo3Y=
X-Google-Smtp-Source: ABdhPJzjhjRenLVlNS1HJ0Z1WF422vUK6cSHDYkcons243OdgRRX3wOE4F63Tq0W2CKrBteyFQ6T9OAR2SBTJbX1W8Y=
X-Received: by 2002:ac2:5d4a:: with SMTP id w10mr26376733lfd.529.1630502546778;
 Wed, 01 Sep 2021 06:22:26 -0700 (PDT)
MIME-Version: 1.0
References: <E1mLMZy-0006TJ-Rw@xenbits.xenproject.org>
In-Reply-To: <E1mLMZy-0006TJ-Rw@xenbits.xenproject.org>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Wed, 1 Sep 2021 09:22:14 -0400
Message-ID: <CAKf6xpsAz7oPX+PdZokm+BAqreqL8rnrAd9UYvdz=F0M-bcMUQ@mail.gmail.com>
Subject: Re: Xen Security Advisory 378 v3 (CVE-2021-28694,CVE-2021-28695,CVE-2021-28696)
 - IOMMU page mapping issues on x86
To: "Xen.org security team" <security@xen.org>
Cc: xen-announce@lists.xen.org, xen-devel@lists.xen.org, 
	xen-users@lists.xen.org, oss-security@lists.openwall.com, 
	"Xen.org security team" <security-team-members@xen.org>
Content-Type: text/plain; charset="UTF-8"

On Wed, Sep 1, 2021 at 5:34 AM Xen.org security team <security@xen.org> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
>  Xen Security Advisory CVE-2021-28694,CVE-2021-28695,CVE-2021-28696 / XSA-378
>                                    version 3
>
>                    IOMMU page mapping issues on x86
>
> UPDATES IN VERSION 3
> ====================
>
> Warn about dom0=pvh breakage in Resolution section.
>
> ISSUE DESCRIPTION
> =================
>
> Both AMD and Intel allow ACPI tables to specify regions of memory
> which should be left untranslated, which typically means these
> addresses should pass the translation phase unaltered.  While these
> are typically device specific ACPI properties, they can also be
> specified to apply to a range of devices, or even all devices.
>
> On all systems with such regions Xen failed to prevent guests from
> undoing/replacing such mappings (CVE-2021-28694).

Hi,

Is there a way to identify if a system's ACPI tables have untranslated
regions?  Does it show up in xen or linux dmesg or can it be
identified in sysfs?

Thanks,
Jason


From xen-users-bounces@lists.xenproject.org Thu Sep 02 15:28:13 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 02 Sep 2021 15:28:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.176162.322717 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLocy-0007v1-H8; Thu, 02 Sep 2021 15:27:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 176162.322717; Thu, 02 Sep 2021 15:27:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLocy-0007uu-CC; Thu, 02 Sep 2021 15:27:44 +0000
Received: by outflank-mailman (input) for mailman id 176162;
 Wed, 01 Sep 2021 09:31:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tzcz=NX=xenbits.xen.org=iwj@srs-us1.protection.inumbo.net>)
 id 1mLMaQ-00066x-LS
 for xen-users@lists.xen.org; Wed, 01 Sep 2021 09:31:14 +0000
Received: from mail.xenproject.org (unknown [104.130.215.37])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 50e6d84a-0b07-11ec-adbd-12813bfff9fa;
 Wed, 01 Sep 2021 09:30:59 +0000 (UTC)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mLMZy-0006zN-V2; Wed, 01 Sep 2021 09:30:46 +0000
Received: from iwj by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mLMZy-0006TJ-Rw; Wed, 01 Sep 2021 09:30:46 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 50e6d84a-0b07-11ec-adbd-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=+rCVNnLKnAbp2uXbXH1bwsbzmEqZNGPyQGmZ8gq+7kE=; b=XVzq51vovCfFiKqUSm6Ks3HKws
	fa7WW4d9ebxm6BNl1z7XocAuZjsDUp3PGUxHPto1K+pgyM7YYj1Q/MivtuVo2QCBsyn41GUVrbVWt
	9krhcgY0GfWpIxXHH9ziFnXtd1cfQL0mmP77a+nu0AzyaXr+SA2LqYsaSjXtmqxgNmtc=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 378 v3 (CVE-2021-28694,CVE-2021-28695,CVE-2021-28696)
 - IOMMU page mapping issues on x86
Message-Id: <E1mLMZy-0006TJ-Rw@xenbits.xenproject.org>
Date: Wed, 01 Sep 2021 09:30:46 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

 Xen Security Advisory CVE-2021-28694,CVE-2021-28695,CVE-2021-28696 / XSA-378
                                   version 3

                   IOMMU page mapping issues on x86

UPDATES IN VERSION 3
====================

Warn about dom0=pvh breakage in Resolution section.

ISSUE DESCRIPTION
=================

Both AMD and Intel allow ACPI tables to specify regions of memory
which should be left untranslated, which typically means these
addresses should pass the translation phase unaltered.  While these
are typically device specific ACPI properties, they can also be
specified to apply to a range of devices, or even all devices.

On all systems with such regions Xen failed to prevent guests from
undoing/replacing such mappings (CVE-2021-28694).

On AMD systems, where a discontinuous range is specified by firmware,
the supposedly-excluded middle range will also be identity-mapped
(CVE-2021-28695).

Further, on AMD systems, upon de-assigment of a physical device from a
guest, the identity mappings would be left in place, allowing a guest
continued access to ranges of memory which it shouldn't have access to
anymore (CVE-2021-28696).

IMPACT
======

The precise impact is system specific, but can - on affected systems -
be any or all of privilege escalation, denial of service, or information
leaks.

VULNERABLE SYSTEMS
==================

The vulnerability is only exploitable by guests granted access to
physical devices (ie, via PCI passthrough).

All versions of Xen are affected.

Only x86 systems with IOMMUs and with firmware specifying memory regions
to be identity mapped are affected.  Other x86 systems are not affected.

Whether a particular system whose ACPI tables declare such memory
region(s) is actually affected cannot be known without knowing when
and/or how these regions are used.  For example, if these regions were
used only during system boot, there would not be any vulnerability.
The necessary knowledge can only be obtained from, collectively, the
hardware and firmware manufacturers.

On Arm hardware IOMMU use is not security supported.  Accordingly, we
have not undertaken an analysis of these issues for Arm systems.

MITIGATION
==========

Not permitting untrusted guests access to phsyical devices will avoid
the vulnerability.

Likewise, limiting untrusted guest access to physical devices whose
firmware-provided ACPI tables declare identity mappings, will avoid
the vulnerability.  (Provided that there are no identity mapped
regions which are specified by the ACPI tables to apply globally.)

Note that a system is still vulnerable if a guest was trusted, while
it had such a device assigned, and then has the device removed in
anticipation of the guest becoming untrusted (because of, for example,
the insertion of an untrusted kernel module),

CREDITS
=======

This issue was discovered by Jan Beulich of SUSE.

RESOLUTION
==========

Applying the appropriate set of attached patches resolves this issue.

However, these patches are known to badly break PVH dom0 support.
Work is ongoing to resolve the problem, and will be committed to the
appropriate Xen trees (including backports) when ready.  PVH dom0 has
"Technical Preview" status so we do not intend to distribute the fixes
via an update to this advisory

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa378/xsa378-?.patch           xen-unstable
xsa378/xsa378-4.15-?.patch      Xen 4.15.x
xsa378/xsa378-4.14-?.patch      Xen 4.14.x
xsa378/xsa378-4.13-*.patch      Xen 4.13.x
xsa378/xsa378-4.12-*.patch      Xen 4.12.x
xsa378/xsa378-4.11-*.patch      Xen 4.11.x

$ sha256sum xsa378* xsa378*/*
b3b49681468bd2be4b95fc1d3861493bbea63bac1c115a12ece76d0313b6a81c  xsa378.meta
2560d4418e6b6d022b4e7fe1f84906ca13b3180537e746ee81cd3f97f0e86c35  xsa378/xsa378-1.patch
134b207c38f8d76bbc218220f1e61f82780e8166818ef51217716023cc27ce3c  xsa378/xsa378-2.patch
c166ef60e08a80440f79d92abe8488b123c8017e7633dbddacb95b20899f9b2b  xsa378/xsa378-3.patch
a2677e157724f57f65165f361a309c417d123ff009168f16d3a0e342b7a601eb  xsa378/xsa378-4.11-0a.patch
832f52f420bb47784bdefd75edd1ca521658327aafb94b4f3586da522d0d19c1  xsa378/xsa378-4.11-0b.patch
9eb7c53892f01424eec6b788f879b36dd75a6f89b1c8b9c973237603525d6546  xsa378/xsa378-4.11-0c.patch
48021fb9a2c52d7939fd11bbba80c67a5a5b6cae2039b4b2a2c6203eb5841260  xsa378/xsa378-4.11-1.patch
4f3fd39aa328c1e397aa2a10b92e98cc341908a8834302a4fc0f230876dd3570  xsa378/xsa378-4.11-2.patch
6e2eeecd2ccc4029f80888263f44b80acf078d69aeffda4d6accd8b2d0899182  xsa378/xsa378-4.11-3.patch
194b27510c8765f1cf8abee57624a075ab26f4f889aa8c201e126643f570f55a  xsa378/xsa378-4.11-4.patch
e8f4eab0984a7db2ca0c6c9ac0fb9107e45ddd572a36454db4a1bdb8b9a8b0c6  xsa378/xsa378-4.11-5.patch
943c7556be47b1a0f2273cf5691fe70dc65e6cb50ff0477d1d61eb3f0ba87a97  xsa378/xsa378-4.11-6.patch
2eb572e1a55caa4aca31f74a3844135a204c4e023a6776d7adc4f4043663fb99  xsa378/xsa378-4.11-7.patch
7c24ba33461d3adcb195a6611df3e9c0501e9dcacf9b8811456450b291d23edf  xsa378/xsa378-4.11-8.patch
fe14ea6699df673b787f93ff821838f2280407674df0c8c06d40efe8320e8748  xsa378/xsa378-4.12-0a.patch
1ba10aef9ea99c4455a34e61792ca65ea6b2ece56f05cd0b4adc14600a7ae346  xsa378/xsa378-4.12-0b.patch
2c2dbc0c18b695c1d2c93e4137228f82b6d21d895c3165a9e29ddea3db78e36a  xsa378/xsa378-4.12-0c.patch
48021fb9a2c52d7939fd11bbba80c67a5a5b6cae2039b4b2a2c6203eb5841260  xsa378/xsa378-4.12-1.patch
f0d62506ccdf081d0efbb553e2d33f17a084272d21f43bf95d11fda2dcc8a3fa  xsa378/xsa378-4.12-2.patch
e266512b18fc30e5bd4884cd720aa81644d3ca3323b38fe1f77d06fa98dd515d  xsa378/xsa378-4.12-3.patch
076f9955593a8ebdea5f24ed302b8a1004bbf50da4c8becf1f93764066b8981c  xsa378/xsa378-4.12-4.patch
9639bc35636ffae4e2b6dd026387347960c1fb986cb2924a18314a72e6b6ec0a  xsa378/xsa378-4.12-5.patch
32dd659aa365d9f8197d99b9334c22b33e9ce805e30376457df6e507f92282c8  xsa378/xsa378-4.12-6.patch
7eaae2fa968eb11e27277141456cc1bd657025aee738221c368e153535c7c0f4  xsa378/xsa378-4.12-7.patch
05982f43f35b580ff41f74b1280e469e0dd20176f184ec04a4874303c2aa3ad1  xsa378/xsa378-4.12-8.patch
c6f551ef9903a343b47692b34a63c70165a2dbf74878a6be6511cdffd55a7e8c  xsa378/xsa378-4.13-0a.patch
223cd63f7e1c39d862b8654da698455ded65ecb5abae0f57c330921522b7fdb4  xsa378/xsa378-4.13-0b.patch
5c33aa24f14e779dfe914e809cff11260083169a3adfb07a31ce11243d80b3ef  xsa378/xsa378-4.13-0c.patch
1d55426ff6a41f0ef4cbd2c943edafff394157703bb0b6ae751564abf93b5ee7  xsa378/xsa378-4.13-1.patch
4d5e7d5e65cd28d6bc7d1a9f2ab24f09dfaef295c4199d5f2db00915dcaa174f  xsa378/xsa378-4.13-2.patch
78df0bcb347f8bb45827f74b191aad36b6e907eb38c6d535035f2b2739645551  xsa378/xsa378-4.13-3.patch
237c33e0ae01a23db01721afb8e6a39101bfe081f8b75dbcff6b9fa9c9aaceda  xsa378/xsa378-4.13-4.patch
7d2f3ae3881d28073be54a6dfb35f13004e4efee742952788430201d86307ecf  xsa378/xsa378-4.13-5.patch
2ecd7580394667db0c41e4819025393e59ae24d6c97d54451c8e683585057367  xsa378/xsa378-4.13-6.patch
592a03d00e5d22d7a3c001681968dc469c70b3e57998b95877388e9528904ea2  xsa378/xsa378-4.13-7.patch
54e6a095f706c66dbbd74e39aa1d88031c9b537589e73ceb2925e2f0cc1854f0  xsa378/xsa378-4.13-8.patch
1d55426ff6a41f0ef4cbd2c943edafff394157703bb0b6ae751564abf93b5ee7  xsa378/xsa378-4.14-1.patch
86fbd88eb8a358575e42cf335c444b047ddb4d2f1c6a1bc6f9e57e6ac0041074  xsa378/xsa378-4.14-2.patch
0a23e5f93ff1bb55f003a56e0ef8c531384b164f0e840f5794acdb9ae3e91996  xsa378/xsa378-4.14-3.patch
e2226f7ddae1d24dbee8cf19efa8d67ebf312f3d10641cb9aec21d68a3c8f818  xsa378/xsa378-4.14-4.patch
f2cf8f7e4aa0460e606b5564adde366332ed323c4d5e3f957e64299ef1bc9baf  xsa378/xsa378-4.14-5.patch
7811426975757e3bb8c6ab3161ba2354e1780b55b9e6be7928229d5f23bf79b6  xsa378/xsa378-4.14-6.patch
58147bd6c0ea4e08e84a17afc796be4bbe53e6fbc1d393f9fe3c6191fd33eba5  xsa378/xsa378-4.14-7.patch
682a011d807a7c284faf0ec9d2cf0aabaddbc658979dea2b9ccbc007b660f9c5  xsa378/xsa378-4.14-8.patch
a00ada0cd673f0909cc7b462cb532dbd6fe17601e06bd84272f5ff1857ea4c73  xsa378/xsa378-4.15-1.patch
d74cc325be1e47d61ba3b1400837af35d044bf1d25806aa98926ec262f80bddd  xsa378/xsa378-4.15-2.patch
2ad685a04dbbdd2c81761b58146e70059b8a8a92b0c1176f36933510293ece5b  xsa378/xsa378-4.15-3.patch
18de9facccd70ce49dd839e219fe71667c43110e474e5d7b56a503a5786fc7e0  xsa378/xsa378-4.15-4.patch
296558b27ba82176f6d06b721102c8ba7c7e6e99d29b29392ea82244e88df0b9  xsa378/xsa378-4.15-5.patch
5d7cc84c66daf0aceab9407fa72f2827024c847f4ca10f8d123eee87b7451aba  xsa378/xsa378-4.15-6.patch
fd4aa4447562230a6684d17e6e4c55f1e48df4773247f66ab9d01181003bc9aa  xsa378/xsa378-4.15-7.patch
5305e3bc513bcd3e016ca3bbecc6cae38c8ed2b2eacb13e82f7b1f4401d3b67d  xsa378/xsa378-4.15-8.patch
78390bf59344ea5dcbfa5831db3634b3f1b3aabf029160c72cdbeeec2b46b2a9  xsa378/xsa378-4.patch
76fb4a1f2604b98d3a803744ad212b3984117ec8c8011ad6db3759f9337a9b5a  xsa378/xsa378-5.patch
a627f8c6b7d2ffac0b6de945189f96b718aeab8e0c8bb11476a40585d6411bd7  xsa378/xsa378-6.patch
28814b51fabd3c5cb3ca249ad291781f589cddd55fc8152fdd5668c5fcdc727c  xsa378/xsa378-7.patch
30e31749ade75fd5ab4c41fa27fe2124bdcc602ccc803a85e5eeec1b9c48a9c1  xsa378/xsa378-8.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.


(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmEvSCUMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZrUYH/iYMkjMzUpv5ik/quZ+z34uXwq/mD8x8ROZKXDev
tgojXcFo0vNlcr71R0J5KrE0YeX+3MjbjqbF7A30cnw4/bgmvhzcdP/fwOfIKFYE
JqaGoDaxFRpsIMvHFXV6OxtjgBgleUukaikUrcwWUG+L90KMmjqZU4IAlNcBAALC
J6rDB8nHqD1s+ODIPdPE149jIE7LJfVqyuu9h4r/jmLEDRJBS2YEs6zgClqnIApl
3WBpZNhp8Tk3BFtbQcu4Uh9c0itymtp+8VsY0xzF2bWsE4aoe5DKHv0DyTSLe9Md
pMG0egH7ZrI3MV4nzHdbhkA2Hn3X0rsJiI7TXpmmQPmgi4g=
=A/oT
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa378.meta"
Content-Disposition: attachment; filename="xsa378.meta"
Content-Transfer-Encoding: base64

ewogICJYU0EiOiAzNzgsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg
Im1hc3RlciIsCiAgICAiNC4xNSIsCiAgICAiNC4xNCIsCiAgICAiNC4xMyIs
CiAgICAiNC4xMiIsCiAgICAiNC4xMSIKICBdLAogICJUcmVlcyI6IFsKICAg
ICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6IHsKICAgICI0LjExIjogewogICAg
ICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0
YWJsZVJlZiI6ICJlZjMyYzdhZmEyNzMxYjc1ODIyNmQ2ZTEwYTFlNDg5YjFh
MTVmYzQxIiwKICAgICAgICAgICJQcmVyZXFzIjogW10sCiAgICAgICAgICAi
UGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTM3OC94c2EzNzgtNC4xMS0q
LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwK
ICAgICI0LjEyIjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVu
IjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICJlYTIwZWVlOTdlOWUwODYx
MTI3YTgwNzBjYzdiOWFlMzU1N2IwOWZiIiwKICAgICAgICAgICJQcmVyZXFz
IjogWwogICAgICAgICAgICAzODMKICAgICAgICAgIF0sCiAgICAgICAgICAi
UGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTM3OC94c2EzNzgtNC4xMi0q
LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwK
ICAgICI0LjEzIjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVu
IjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIzMmQ1ODA5MDJiOTU5MDAw
ZDc5ZDUxZGZmMDNhMzU2MDY1M2M0ZmNiIiwKICAgICAgICAgICJQcmVyZXFz
IjogWwogICAgICAgICAgICAzODMKICAgICAgICAgIF0sCiAgICAgICAgICAi
UGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTM3OC94c2EzNzgtNC4xMy0q
LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwK
ICAgICI0LjE0IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVu
IjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICI0OTI5OWM0ODEzYjc4NDdk
MjlkZjA3YmY3OTBmNTQ4OTA2MGYyYTljIiwKICAgICAgICAgICJQcmVyZXFz
IjogWwogICAgICAgICAgICAzODMKICAgICAgICAgIF0sCiAgICAgICAgICAi
UGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTM3OC94c2EzNzgtNC4xNC0q
LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwK
ICAgICI0LjE1IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVu
IjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICJkYmE3NzQ4OTZmN2RkNzQ3
NzNjMTRkNTM3NjQzYjdkNzQ3N2ZlZmNkIiwKICAgICAgICAgICJQcmVyZXFz
IjogWwogICAgICAgICAgICAzODMKICAgICAgICAgIF0sCiAgICAgICAgICAi
UGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTM3OC94c2EzNzgtNC4xNS0q
LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwK
ICAgICJtYXN0ZXIiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4
ZW4iOiB7CiAgICAgICAgICAiU3RhYmxlUmVmIjogIjI1ZGE5NDU1ZjFiYjhh
NmQzMzAzOTU3NWE3YjI4YmRmYzRlM2ZjZmUiLAogICAgICAgICAgIlByZXJl
cXMiOiBbCiAgICAgICAgICAgIDM4MwogICAgICAgICAgXSwKICAgICAgICAg
ICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhMzc4L3hzYTM3OC0/LnBh
dGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfQogIH0K
fQ==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+Ci0tLQp2ODogQWRkIGNvbW1lbnRzIHRvIHBsYWluIHRydWUvZmFs
c2UgZnVuY3Rpb24gYXJndW1lbnRzLgp2NDogRG9uJ3QgYWNjZXB0IHJlcXVl
c3RzIG5vdCBhbGxvd2luZyBmb3IgYm90aCByZWFkaW5nIGFuZCB3cml0aW5n
LgogICAgRG9uJ3QgYWNjZXB0IG1pc21hdGNoZXMgaW4gdGhlIGV4Y2x1c2lv
bl9hbGxvd19hbGwgc2V0dGluZy4gQ292ZXIKICAgIGZvciB0aGUgZHJvcHBp
bmcgb2YgImNvcnJlY3QgbGltaXQgY2FsY3VsYXRpb24gaW4gSVZNRCBwYXJz
aW5nIi4KdjI6IEFjY2VwdCBvdmVybGFwcGluZyByZWdpb25zIGFzIHdlbGwu
Ci0tLQpUQkQ6IFNob3VsZCB3ZSBhc3N1bWUgcmFuZG9tIG9yZGVyIG9mIGVu
dHJpZXMgcmlnaHQgYXdheT8KVEJEOiBBbmRyZXcgc3VnZ2VzdHMgdGhlcmUg
YXJlIGluZGljYXRpb25zIG9mIG9ubHkgb25lIGdsb2JhbCBleGNsdXNpb24K
ICAgICByYW5nZSBiZWluZyBhbGxvd2VkLCB3aGljaCB3b3VsZCB0aGVuIChw
cmVzdW1hYmx5KSBiZSB0aWVkIHRvCiAgICAgQUNQSV9JVk1EX0VYQ0xVU0lP
Tl9SQU5HRSAoYXMgcGVyIGFib3ZlKS4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bh
c3N0aHJvdWdoL2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVuL2RyaXZlcnMv
cGFzc3Rocm91Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtMTE2LDEyICsxMTYs
MjEgQEAgc3RhdGljIHN0cnVjdCBhbWRfaW9tbXUgKiBfX2luaXQgZmluZF9p
bwogICAgIHJldHVybiBOVUxMOwogfQogCi1zdGF0aWMgdm9pZCBfX2luaXQg
cmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoCi0gICAgc3RydWN0IGFt
ZF9pb21tdSAqaW9tbXUsIHVpbnQ2NF90IGJhc2UsIHVpbnQ2NF90IGxpbWl0
KQorc3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25f
cmFuZ2UoCisgICAgc3RydWN0IGFtZF9pb21tdSAqaW9tbXUsIHVpbnQ2NF90
IGJhc2UsIHVpbnQ2NF90IGxpbWl0LAorICAgIGJvb2wgYWxsLCBib29sIGl3
LCBib29sIGlyKQogeworICAgIGlmICggIWlyIHx8ICFpdyApCisgICAgICAg
IHJldHVybiAtRVBFUk07CisKICAgICAvKiBuZWVkIHRvIGV4dGVuZCBleGNs
dXNpb24gcmFuZ2U/ICovCiAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9uX2Vu
YWJsZSApCiAgICAgeworICAgICAgICBpZiAoIGlvbW11LT5leGNsdXNpb25f
bGltaXQgKyBQQUdFX1NJWkUgPCBiYXNlIHx8CisgICAgICAgICAgICAgbGlt
aXQgKyBQQUdFX1NJWkUgPCBpb21tdS0+ZXhjbHVzaW9uX2Jhc2UgfHwKKyAg
ICAgICAgICAgICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCAhPSBhbGwg
KQorICAgICAgICAgICAgcmV0dXJuIC1FQlVTWTsKKwogICAgICAgICBpZiAo
IGlvbW11LT5leGNsdXNpb25fYmFzZSA8IGJhc2UgKQogICAgICAgICAgICAg
YmFzZSA9IGlvbW11LT5leGNsdXNpb25fYmFzZTsKICAgICAgICAgaWYgKCBp
b21tdS0+ZXhjbHVzaW9uX2xpbWl0ID4gbGltaXQgKQpAQCAtMTI5LDE2ICsx
MzgsMTEgQEAgc3RhdGljIHZvaWQgX19pbml0IHJlc2VydmVfaW9tbXVfZXhj
bHVzaQogICAgIH0KIAogICAgIGlvbW11LT5leGNsdXNpb25fZW5hYmxlID0g
SU9NTVVfQ09OVFJPTF9FTkFCTEVEOworICAgIGlvbW11LT5leGNsdXNpb25f
YWxsb3dfYWxsID0gYWxsOwogICAgIGlvbW11LT5leGNsdXNpb25fYmFzZSA9
IGJhc2U7CiAgICAgaW9tbXUtPmV4Y2x1c2lvbl9saW1pdCA9IGxpbWl0Owot
fQogCi1zdGF0aWMgdm9pZCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2VfYWxsKAotICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LAot
ICAgIHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCkK
LXsKLSAgICByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwg
YmFzZSwgbGltaXQpOwotICAgIGlvbW11LT5leGNsdXNpb25fYWxsb3dfYWxs
ID0gSU9NTVVfQ09OVFJPTF9FTkFCTEVEOworICAgIHJldHVybiAwOwogfQog
CiBzdGF0aWMgdm9pZCBfX2luaXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2Rl
dmljZSgKQEAgLTE3Niw2ICsxODAsNyBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgdW5zaWduZWQgbG9uZyByYW5n
ZV90b3AsIGlvbW11X3RvcCwgbGVuZ3RoOwogICAgIHN0cnVjdCBhbWRfaW9t
bXUgKmlvbW11OwogICAgIHVuc2lnbmVkIGludCBiZGY7CisgICAgaW50IHJj
ID0gMDsKIAogICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJhbmdlIGlu
c2lkZSBvZiBJT01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICovCiAgICAg
Lyogbm90ZTogJ2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBw
YWdlLWFsaWduZWQgKi8KQEAgLTE5NywxMCArMjAyLDE1IEBAIHN0YXRpYyBp
bnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICBpZiAoIGxp
bWl0ID49IGlvbW11X3RvcCApCiAgICAgewogICAgICAgICBmb3JfZWFjaF9h
bWRfaW9tbXUoIGlvbW11ICkKLSAgICAgICAgICAgIHJlc2VydmVfaW9tbXVf
ZXhjbHVzaW9uX3JhbmdlX2FsbChpb21tdSwgYmFzZSwgbGltaXQpOworICAg
ICAgICB7CisgICAgICAgICAgICByYyA9IHJlc2VydmVfaW9tbXVfZXhjbHVz
aW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwg
Ki8sIGl3LCBpcik7CisgICAgICAgICAgICBpZiAoIHJjICkKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgfQogICAgIH0KIAotICAgIHJldHVy
biAwOworICAgIHJldHVybiByYzsKIH0KIAogc3RhdGljIGludCBfX2luaXQg
cmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoCkBAIC0yMTEs
NiArMjIxLDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVz
aW9uX3JhbgogICAgIHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90
b3AsIGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAg
ICB1MTYgcmVxOworICAgIGludCByYyA9IDA7CiAKICAgICBpb21tdSA9IGZp
bmRfaW9tbXVfZm9yX2RldmljZShzZWcsIGJkZik7CiAgICAgaWYgKCAhaW9t
bXUgKQpAQCAtMjQwLDEyICsyNTEsMTMgQEAgc3RhdGljIGludCBfX2luaXQg
cmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgIC8qIHJlZ2lzdGVyIElPTU1V
IGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyBmb3IgZGV2aWNlICovCiAgICAg
aWYgKCBsaW1pdCA+PSBpb21tdV90b3AgICkKICAgICB7Ci0gICAgICAgIHJl
c2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1p
dCk7CisgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFu
Z2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGZhbHNlIC8qIGFsbCAqLywgaXcsIGly
KTsKICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmR0ZV9hbGxvd19leGNs
dXNpb24gPSB0cnVlOwogICAgICAgICBpdnJzX21hcHBpbmdzW3JlcV0uZHRl
X2FsbG93X2V4Y2x1c2lvbiA9IHRydWU7CiAgICAgfQogCi0gICAgcmV0dXJu
IDA7CisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCkBA
IC0yNTUsNiArMjY3LDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJf
ZXhjbHVzaW9uX3JhbgogICAgIHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBp
b21tdV90b3AsIGxlbmd0aDsKICAgICB1bnNpZ25lZCBpbnQgYmRmOwogICAg
IHUxNiByZXE7CisgICAgaW50IHJjID0gMDsKIAogICAgIC8qIGlzIHBhcnQg
b2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJT01NVSB2aXJ0dWFsIGFk
ZHJlc3Mgc3BhY2U/ICovCiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJhbWV0
ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KQEAgLTI4NSw4
ICsyOTgsMTAgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVz
aW9uX3JhbgogCiAgICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJh
bmdlIHNldHRpbmdzICovCiAgICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3Ag
KQotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9hbGwo
aW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAgICByZXR1cm4gMDsKKyAgICAgICAg
cmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFz
ZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3LCBpcik7CisKKyAgICByZXR1
cm4gcmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfZGV2
aWNlX3NlbGVjdCgK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KLS0tClRCRDogT3ZlcmxhcHBpbmcgcmFuZ2VzIGNv
dWxkIGJlIGRlYWx0IHdpdGggKHdoZW4gdGhleSBzcGVjaWZ5IHRoZSBzYW1l
CiAgICAgcGVybWlzc2lvbnMpIGJ5IHNwbGl0dGluZyB0aGUgcmFuZ2VzIHRv
IG5vbi1vdmVybGFwcGluZyBwaWVjZXMuIFNlZQogICAgICJJT01NVTogZ2Vu
ZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVkIFJNUlIgcmVnaW9u
cyIgYW5kIGl0cwogICAgIHVzZXIgIkFNRC9JT01NVTogcmUtYXJyYW5nZS9j
b21wbGV0ZSByZS1hc3NpZ25tZW50IGhhbmRsaW5nIiBmb3IKICAgICB3aHkg
b3ZlcmxhcHMgY2FuJ3QgYmUgYWNjZXB0ZWQgd2l0aCB0aGUgY2hvc2VuIHRy
YWNraW5nIG1vZGVsLiBCdXQKICAgICB0aGUgYmFzZSBhc3N1bXB0aW9uIGlz
IGFueXdheSBmb3IgZmlybXdhcmUgdG8gbm90IHN1cmZhY2UKICAgICBvdmVy
bGFwcGluZyByYW5nZXMgaW4gdGhlIGZpcnN0IHBsYWNlLgotLS0Kdjg6IEZp
eCBidWlsZCAoZmFpbHVyZSByZXN1bHRlZCBmcm9tIGEgcGllY2Ugb2YgY29k
ZSBsaXZpbmcgaGVyZSB3aGljaAogICAgb25seSBhIGxhdGVyIHBhdGNoIHNo
b3VsZCBhZGQpLiBSZS1iYXNlIG92ZXIgYWRqdXN0bWVudHMgdG8gZWFybGll
cgogICAgcGF0Y2guCnY1OiBEb24ndCBhbGxvdyBvdmVybGFwcyAoZXhjZXB0
IGV4YWN0IG1hdGNoZXMpIGFuZCBkb24ndCBtZXJnZS4KICAgIFJlLWJhc2Uu
CnY0OiBBZGp1c3QgdGl0bGUuIFJlLWJhc2Ugb3ZlciBjaGFuZ2VzIGVhcmxp
ZXIgaW4gdGhlIHNlcmllcy4KdjI6IFJlLWJhc2Ugb3ZlciBYU0EtMzAyLgoK
LS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmgKKysr
IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmgKQEAgLTEw
NywyMCArMTA3LDI0IEBAIHN0cnVjdCBhbWRfaW9tbXUgewogICAgIHN0cnVj
dCBsaXN0X2hlYWQgYXRzX2RldmljZXM7CiB9OwogCitzdHJ1Y3QgaXZyc191
bml0eV9tYXAgeworICAgIGJvb2wgcmVhZDoxOworICAgIGJvb2wgd3JpdGU6
MTsKKyAgICBwYWRkcl90IGFkZHI7CisgICAgdW5zaWduZWQgbG9uZyBsZW5n
dGg7CisgICAgc3RydWN0IGl2cnNfdW5pdHlfbWFwICpuZXh0OworfTsKKwog
c3RydWN0IGl2cnNfbWFwcGluZ3MgewogICAgIHVpbnQxNl90IGR0ZV9yZXF1
ZXN0b3JfaWQ7CiAgICAgYm9vbCB2YWxpZDoxOwogICAgIGJvb2wgZHRlX2Fs
bG93X2V4Y2x1c2lvbjoxOwotICAgIGJvb2wgdW5pdHlfbWFwX2VuYWJsZTox
OwotICAgIGJvb2wgd3JpdGVfcGVybWlzc2lvbjoxOwotICAgIGJvb2wgcmVh
ZF9wZXJtaXNzaW9uOjE7CiAKICAgICAvKiBpdmhkIGRldmljZSBkYXRhIHNl
dHRpbmdzICovCiAgICAgdWludDhfdCBkZXZpY2VfZmxhZ3M7CiAKLSAgICB1
bnNpZ25lZCBsb25nIGFkZHJfcmFuZ2Vfc3RhcnQ7Ci0gICAgdW5zaWduZWQg
bG9uZyBhZGRyX3JhbmdlX2xlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lvbW11
ICppb21tdTsKKyAgICBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKnVuaXR5X21h
cDsKIAogICAgIC8qIHBlciBkZXZpY2UgaW50ZXJydXB0IHJlbWFwcGluZyB0
YWJsZSAqLwogICAgIHZvaWQgKmludHJlbWFwX3RhYmxlOwotLS0gYS94ZW4v
ZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfYWNwaS5jCisrKyBiL3hl
bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9hY3BpLmMKQEAgLTE0
NSwzMiArMTQ1LDQ4IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlc2VydmVfaW9t
bXVfZXhjbHVzaW8KICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQg
X19pbml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoCi0gICAgdTE2
IHNlZywgdTE2IGJkZiwgdW5zaWduZWQgbG9uZyBiYXNlLAotICAgIHVuc2ln
bmVkIGxvbmcgbGVuZ3RoLCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9f
aW5pdCByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKAorICAgIHVpbnQx
Nl90IHNlZywgdWludDE2X3QgYmRmLCB1bnNpZ25lZCBsb25nIGJhc2UsCisg
ICAgdW5zaWduZWQgbG9uZyBsZW5ndGgsIGJvb2wgaXcsIGJvb2wgaXIpCiB7
CiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhzZWcpOwotICAgIHVuc2lnbmVkIGxvbmcgb2xk
X3RvcCwgbmV3X3RvcDsKKyAgICBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKnVu
aXR5X21hcCA9IGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXA7CiAKLSAg
ICAvKiBuZWVkIHRvIGV4dGVuZCB1bml0eS1tYXBwZWQgcmFuZ2U/ICovCi0g
ICAgaWYgKCBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwX2VuYWJsZSAp
CisgICAgLyogQ2hlY2sgZm9yIG92ZXJsYXBzLiAqLworICAgIGZvciAoIDsg
dW5pdHlfbWFwOyB1bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQogICAg
IHsKLSAgICAgICAgb2xkX3RvcCA9IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRy
X3JhbmdlX3N0YXJ0ICsKLSAgICAgICAgICAgIGl2cnNfbWFwcGluZ3NbYmRm
XS5hZGRyX3JhbmdlX2xlbmd0aDsKLSAgICAgICAgbmV3X3RvcCA9IGJhc2Ug
KyBsZW5ndGg7Ci0gICAgICAgIGlmICggb2xkX3RvcCA+IG5ld190b3AgKQot
ICAgICAgICAgICAgbmV3X3RvcCA9IG9sZF90b3A7Ci0gICAgICAgIGlmICgg
aXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQgPCBiYXNlICkK
LSAgICAgICAgICAgIGJhc2UgPSBpdnJzX21hcHBpbmdzW2JkZl0uYWRkcl9y
YW5nZV9zdGFydDsKLSAgICAgICAgbGVuZ3RoID0gbmV3X3RvcCAtIGJhc2U7
Ci0gICAgfQotCi0gICAgLyogZXh0ZW5kIHIvdyBwZXJtaXNzaW9tcyBhbmQg
a2VlcCBhZ2dyZWdhdGUgKi8KLSAgICBpdnJzX21hcHBpbmdzW2JkZl0ud3Jp
dGVfcGVybWlzc2lvbiA9IGl3OwotICAgIGl2cnNfbWFwcGluZ3NbYmRmXS5y
ZWFkX3Blcm1pc3Npb24gPSBpcjsKLSAgICBpdnJzX21hcHBpbmdzW2JkZl0u
dW5pdHlfbWFwX2VuYWJsZSA9IHRydWU7Ci0gICAgaXZyc19tYXBwaW5nc1ti
ZGZdLmFkZHJfcmFuZ2Vfc3RhcnQgPSBiYXNlOwotICAgIGl2cnNfbWFwcGlu
Z3NbYmRmXS5hZGRyX3JhbmdlX2xlbmd0aCA9IGxlbmd0aDsKKyAgICAgICAg
LyoKKyAgICAgICAgICogRXhhY3QgbWF0Y2hlcyBhcmUgb2theS4gVGhpcyBj
YW4gaW4gcGFydGljdWxhciBoYXBwZW4gd2hlbgorICAgICAgICAgKiByZWdp
c3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgpIGNhbGxzIGhlcmUg
dHdpY2UgZm9yIHRoZQorICAgICAgICAgKiBzYW1lIChzLGIsZCxmKS4KKyAg
ICAgICAgICovCisgICAgICAgIGlmICggYmFzZSA9PSB1bml0eV9tYXAtPmFk
ZHIgJiYgbGVuZ3RoID09IHVuaXR5X21hcC0+bGVuZ3RoICYmCisgICAgICAg
ICAgICAgaXIgPT0gdW5pdHlfbWFwLT5yZWFkICYmIGl3ID09IHVuaXR5X21h
cC0+d3JpdGUgKQorICAgICAgICAgICAgcmV0dXJuIDA7CisKKyAgICAgICAg
aWYgKCB1bml0eV9tYXAtPmFkZHIgKyB1bml0eV9tYXAtPmxlbmd0aCA+IGJh
c2UgJiYKKyAgICAgICAgICAgICBiYXNlICsgbGVuZ3RoID4gdW5pdHlfbWFw
LT5hZGRyICkKKyAgICAgICAgeworICAgICAgICAgICAgQU1EX0lPTU1VX0RF
QlVHKCJJVk1EIEVycm9yOiBvdmVybGFwIFslbHgsJWx4KSB2cyBbJWx4LCVs
eClcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSwgYmFz
ZSArIGxlbmd0aCwgdW5pdHlfbWFwLT5hZGRyLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuaXR5X21hcC0+YWRkciArIHVuaXR5X21hcC0+bGVu
Z3RoKTsKKyAgICAgICAgICAgIHJldHVybiAtRVBFUk07CisgICAgICAgIH0K
KyAgICB9CisKKyAgICAvKiBQb3B1bGF0ZSBhbmQgaW5zZXJ0IGEgbmV3IHVu
aXR5IG1hcC4gKi8KKyAgICB1bml0eV9tYXAgPSB4bWFsbG9jKHN0cnVjdCBp
dnJzX3VuaXR5X21hcCk7CisgICAgaWYgKCAhdW5pdHlfbWFwICkKKyAgICAg
ICAgcmV0dXJuIC1FTk9NRU07CisKKyAgICB1bml0eV9tYXAtPnJlYWQgPSBp
cjsKKyAgICB1bml0eV9tYXAtPndyaXRlID0gaXc7CisgICAgdW5pdHlfbWFw
LT5hZGRyID0gYmFzZTsKKyAgICB1bml0eV9tYXAtPmxlbmd0aCA9IGxlbmd0
aDsKKyAgICB1bml0eV9tYXAtPm5leHQgPSBpdnJzX21hcHBpbmdzW2JkZl0u
dW5pdHlfbWFwOworICAgIGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXAg
PSB1bml0eV9tYXA7CisKKyAgICByZXR1cm4gMDsKIH0KIAogc3RhdGljIGlu
dCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9hbGxfZGV2
aWNlcygKQEAgLTE5MywxMyArMjA5LDEzIEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICAgICAgbGVuZ3RoID0gcmFu
Z2VfdG9wIC0gYmFzZTsKICAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHkt
bWFwcGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAqLwogICAgICAgICAv
KiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNp
b24gcmFuZ2UgKi8KLSAgICAgICAgZm9yICggYmRmID0gMDsgYmRmIDwgaXZy
c19iZGZfZW50cmllczsgYmRmKysgKQotICAgICAgICAgICAgcmVzZXJ2ZV91
bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBp
dywgaXIpOworICAgICAgICBmb3IgKCBiZGYgPSAwOyAhcmMgJiYgYmRmIDwg
aXZyc19iZGZfZW50cmllczsgYmRmKysgKQorICAgICAgICAgICAgcmMgPSBy
ZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywgYmRmLCBiYXNlLCBs
ZW5ndGgsIGl3LCBpcik7CiAgICAgICAgIC8qIHB1c2ggJ2Jhc2UnIGp1c3Qg
b3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKi8KICAgICAgICAg
YmFzZSA9IGlvbW11X3RvcDsKICAgICB9CiAgICAgLyogcmVnaXN0ZXIgSU9N
TVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzICovCi0gICAgaWYgKCBsaW1p
dCA+PSBpb21tdV90b3AgKQorICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlv
bW11X3RvcCApCiAgICAgewogICAgICAgICBmb3JfZWFjaF9hbWRfaW9tbXUo
IGlvbW11ICkKICAgICAgICAgewpAQCAtMjQxLDE1ICsyNTcsMTUgQEAgc3Rh
dGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgICAg
ICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwogICAgICAgICAvKiByZXNl
cnZlIHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZSAqLwog
ICAgICAgICAvKiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRo
ZSBleGNsdXNpb24gcmFuZ2UgKi8KLSAgICAgICAgcmVzZXJ2ZV91bml0eV9t
YXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIp
OwotICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywg
cmVxLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7CisgICAgICAgIHJjID0gcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVu
Z3RoLCBpdywgaXIpID86CisgICAgICAgICAgICAgcmVzZXJ2ZV91bml0eV9t
YXBfZm9yX2RldmljZShzZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLCBpdywgaXIp
OwogCiAgICAgICAgIC8qIHB1c2ggJ2Jhc2UnIGp1c3Qgb3V0c2lkZSBvZiB2
aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKi8KICAgICAgICAgYmFzZSA9IGlvbW11
X3RvcDsKICAgICB9CiAKICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNp
b24gcmFuZ2Ugc2V0dGluZ3MgZm9yIGRldmljZSAqLwotICAgIGlmICggbGlt
aXQgPj0gaW9tbXVfdG9wICApCisgICAgaWYgKCAhcmMgJiYgbGltaXQgPj0g
aW9tbXVfdG9wICApCiAgICAgewogICAgICAgICByYyA9IHJlc2VydmVfaW9t
bXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAv
KiBhbGwgKi8sIGl3LCBpcik7CkBAIC0yODAsMTUgKzI5NiwxNSBAQCBzdGF0
aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgICAg
IGxlbmd0aCA9IHJhbmdlX3RvcCAtIGJhc2U7CiAgICAgICAgIC8qIHJlc2Vy
dmUgci93IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMg
Ki8KICAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBv
ZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9
IDA7IGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKKyAgICAgICAg
Zm9yICggYmRmID0gMDsgIXJjICYmIGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7
IGJkZisrICkKICAgICAgICAgewogICAgICAgICAgICAgaWYgKCBpb21tdSA9
PSBmaW5kX2lvbW11X2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmKSApCiAg
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmVzZXJ2ZV91bml0eV9t
YXBfZm9yX2RldmljZShpb21tdS0+c2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGl3LCBpcik7CiAgICAgICAgICAgICAgICAgcmVxID0gZ2V0X2l2cnNfbWFw
cGluZ3MoaW9tbXUtPnNlZylbYmRmXS5kdGVfcmVxdWVzdG9yX2lkOwotICAg
ICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIpOworICAgICAg
ICAgICAgICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShp
b21tdS0+c2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyKSA/
OgorICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBfZm9y
X2RldmljZShpb21tdS0+c2VnLCByZXEsIGJhc2UsIGxlbmd0aCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aXcsIGlyKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCkBAIC0yOTcs
NyArMzEzLDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVz
aW9uX3JhbgogICAgIH0KIAogICAgIC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1
c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICggbGltaXQgPj0gaW9t
bXVfdG9wICkKKyAgICBpZiAoICFyYyAmJiBsaW1pdCA+PSBpb21tdV90b3Ag
KQogICAgICAgICByYyA9IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3Jhbmdl
KGlvbW11LCBiYXNlLCBsaW1pdCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0cnVlIC8qIGFsbCAqLywgaXcsIGlyKTsK
IAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9p
b21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lf
YW1kX2lvbW11LmMKQEAgLTM4NCwxNSArMzg0LDE3IEBAIHN0YXRpYyBpbnQg
YW1kX2lvbW11X2Fzc2lnbl9kZXZpY2Uoc3RydWMKICAgICBzdHJ1Y3QgaXZy
c19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdz
KHBkZXYtPnNlZyk7CiAgICAgaW50IGJkZiA9IFBDSV9CREYyKHBkZXYtPmJ1
cywgZGV2Zm4pOwogICAgIGludCByZXFfaWQgPSBnZXRfZG1hX3JlcXVlc3Rv
cl9pZChwZGV2LT5zZWcsIGJkZik7CisgICAgY29uc3Qgc3RydWN0IGl2cnNf
dW5pdHlfbWFwICp1bml0eV9tYXA7CiAKLSAgICBpZiAoIGl2cnNfbWFwcGlu
Z3NbcmVxX2lkXS51bml0eV9tYXBfZW5hYmxlICkKKyAgICBmb3IgKCB1bml0
eV9tYXAgPSBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwOyB1bml0
eV9tYXA7CisgICAgICAgICAgdW5pdHlfbWFwID0gdW5pdHlfbWFwLT5uZXh0
ICkKICAgICB7Ci0gICAgICAgIGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91
bml0eV9tYXAoCi0gICAgICAgICAgICBkLAotICAgICAgICAgICAgaXZyc19t
YXBwaW5nc1tyZXFfaWRdLmFkZHJfcmFuZ2Vfc3RhcnQsCi0gICAgICAgICAg
ICBpdnJzX21hcHBpbmdzW3JlcV9pZF0uYWRkcl9yYW5nZV9sZW5ndGgsCi0g
ICAgICAgICAgICBpdnJzX21hcHBpbmdzW3JlcV9pZF0ud3JpdGVfcGVybWlz
c2lvbiwKLSAgICAgICAgICAgIGl2cnNfbWFwcGluZ3NbcmVxX2lkXS5yZWFk
X3Blcm1pc3Npb24pOworICAgICAgICBpbnQgcmMgPSBhbWRfaW9tbXVfcmVz
ZXJ2ZV9kb21haW5fdW5pdHlfbWFwKAorICAgICAgICAgICAgICAgICAgICAg
ZCwgdW5pdHlfbWFwLT5hZGRyLCB1bml0eV9tYXAtPmxlbmd0aCwKKyAgICAg
ICAgICAgICAgICAgICAgIHVuaXR5X21hcC0+d3JpdGUsIHVuaXR5X21hcC0+
cmVhZCk7CisKKyAgICAgICAgaWYgKCByYyApCisgICAgICAgICAgICByZXR1
cm4gcmM7CiAgICAgfQogCiAgICAgcmV0dXJuIHJlYXNzaWduX2RldmljZShw
ZGV2LT5kb21haW4sIGQsIGRldmZuLCBwZGV2KTsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+Ci0tLQp2NTogTmV3LgoKLS0t
IGEveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYworKysgYi94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCkBAIC04MDgsNyArODA4LDcgQEAgZXB0X3NldF9l
bnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBnZgogICAgIGJvb2xfdCBl
bnRyeV93cml0dGVuID0gMDsKICAgICBib29sX3QgbmVlZF9tb2RpZnlfdnRk
X3RhYmxlID0gMTsKICAgICBib29sX3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsK
LSAgICB1bnNpZ25lZCBpbnQgaW9tbXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11
X2ZsYWdzKHAybXQsIG1mbik7CisgICAgdW5zaWduZWQgaW50IGlvbW11X2Zs
YWdzID0gcDJtX2dldF9pb21tdV9mbGFncyhwMm10LCBwMm1hLCBtZm4pOwog
ICAgIGJvb2xfdCBuZWVkc19zeW5jID0gMTsKICAgICBlcHRfZW50cnlfdCBv
bGRfZW50cnkgPSB7IC5lcHRlID0gMCB9OwogICAgIGVwdF9lbnRyeV90IG5l
d19lbnRyeSA9IHsgLmVwdGUgPSAwIH07CkBAIC05MzgsOCArOTM4LDggQEAg
ZXB0X3NldF9lbnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBnZgogCiAg
ICAgICAgIC8qIFNhZmUgdG8gcmVhZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2Ug
aG9sZCB0aGUgcDJtIGxvY2sgKi8KICAgICAgICAgaWYgKCBlcHRfZW50cnkt
Pm1mbiA9PSBuZXdfZW50cnkubWZuICYmCi0gICAgICAgICAgICAgcDJtX2dl
dF9pb21tdV9mbGFncyhlcHRfZW50cnktPnNhX3AybXQsIF9tZm4oZXB0X2Vu
dHJ5LT5tZm4pKSA9PQotICAgICAgICAgICAgIGlvbW11X2ZsYWdzICkKKyAg
ICAgICAgICAgICBwMm1fZ2V0X2lvbW11X2ZsYWdzKGVwdF9lbnRyeS0+c2Ff
cDJtdCwgZXB0X2VudHJ5LT5hY2Nlc3MsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBfbWZuKGVwdF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVf
ZmxhZ3MgKQogICAgICAgICAgICAgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0g
MDsKIAogICAgICAgICBlcHRfcDJtX3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3
X2VudHJ5KTsKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wdC5jCisrKyBi
L3hlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYwpAQCAtNTQ1LDYgKzU0NSwxNiBA
QCBpbnQgcDJtX3B0X2hhbmRsZV9kZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAg
ICAgcmV0dXJuIHJjOwogfQogCisvKiBSZWNvbnN0cnVjdCBhIGZha2UgcDJt
X2FjY2Vzc190IGZyb20gc3RvcmVkIFBURSBmbGFncy4gKi8KK3N0YXRpYyBw
Mm1fYWNjZXNzX3QgcDJtX2ZsYWdzX3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQg
ZmxhZ3MpCit7CisgICAgaWYgKCBmbGFncyAmIF9QQUdFX1BSRVNFTlQgKQor
ICAgICAgICByZXR1cm4gcDJtX2FjY2Vzc19uOworCisgICAgLyogTm8gbmVl
ZCB0byBsb29rIGF0IF9QQUdFX05YIGZvciBub3cuICovCisgICAgcmV0dXJu
IGZsYWdzICYgX1BBR0VfUlcgPyBwMm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vz
c19yOworfQorCiAvKiBDaGVja3Mgb25seSBhcHBsaWNhYmxlIHRvIGVudHJp
ZXMgd2l0aCBvcmRlciA+IFBBR0VfT1JERVJfNEsgKi8KIHN0YXRpYyB2b2lk
IGNoZWNrX2VudHJ5KG1mbl90IG1mbiwgcDJtX3R5cGVfdCBuZXcsIHAybV90
eXBlX3Qgb2xkLAogICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IG9yZGVyKQpAQCAtNTc5LDcgKzU4OSw3IEBAIHAybV9wdF9zZXRfZW50
cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwKICAgICBsMl9wZ2VudHJ5X3Qg
bDJlX2NvbnRlbnQ7CiAgICAgbDNfcGdlbnRyeV90IGwzZV9jb250ZW50Owog
ICAgIGludCByYzsKLSAgICB1bnNpZ25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdz
ID0gcDJtX2dldF9pb21tdV9mbGFncyhwMm10LCBtZm4pOworICAgIHVuc2ln
bmVkIGludCBpb21tdV9wdGVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdz
KHAybXQsIHAybWEsIG1mbik7CiAgICAgLyoKICAgICAgKiBvbGRfbWZuIGFu
ZCBpb21tdV9vbGRfZmxhZ3MgY29udHJvbCBwb3NzaWJsZSBmbHVzaC91cGRh
dGUgbmVlZHMgb24gdGhlCiAgICAgICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1
c2ggd2hlbiBNRk4gb3IgZmxhZ3MgKGkuZS4gcGVybWlzc2lvbnMpIGNoYW5n
ZS4KQEAgLTY0Miw2ICs2NTIsNyBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVj
dCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgb2xkX21mbiA9
IGwxZV9nZXRfcGZuKCpwMm1fZW50cnkpOwogICAgICAgICAgICAgICAgIGlv
bW11X29sZF9mbGFncyA9CiAgICAgICAgICAgICAgICAgICAgIHAybV9nZXRf
aW9tbXVfZmxhZ3MocDJtX2ZsYWdzX3RvX3R5cGUoZmxhZ3MpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9mbGFnc190
b19hY2Nlc3MoZmxhZ3MpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIF9tZm4ob2xkX21mbikpOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgZWxzZQpAQCAtNjg0LDkgKzY5NSwxMCBAQCBwMm1fcHRf
c2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRS
SUVTKTsKICAgICAgICAgQVNTRVJUKHAybV9lbnRyeSk7CiAgICAgICAgIG9s
ZF9tZm4gPSBsMWVfZ2V0X3BmbigqcDJtX2VudHJ5KTsKKyAgICAgICAgZmxh
Z3MgPSBsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpOwogICAgICAgICBpb21t
dV9vbGRfZmxhZ3MgPQotICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFn
cyhwMm1fZmxhZ3NfdG9fdHlwZShsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkp
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRf
bWZuKSk7CisgICAgICAgICAgICBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9m
bGFnc190b190eXBlKGZsYWdzKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksIF9tZm4ob2xk
X21mbikpOwogCiAgICAgICAgIGlmICggbWZuX3ZhbGlkKG1mbikgfHwgcDJt
X2FsbG93c19pbnZhbGlkX21mbihwMm10KSApCiAgICAgICAgICAgICBlbnRy
eV9jb250ZW50ID0gcDJtX2wxZV9mcm9tX3BmbihtZm5feChtZm4pLApAQCAt
NzE0LDYgKzcyNiw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9k
b21haW4gKnAybSwKICAgICAgICAgICAgICAgICBvbGRfbWZuID0gbDFlX2dl
dF9wZm4oKnAybV9lbnRyeSk7CiAgICAgICAgICAgICAgICAgaW9tbXVfb2xk
X2ZsYWdzID0KICAgICAgICAgICAgICAgICAgICAgcDJtX2dldF9pb21tdV9m
bGFncyhwMm1fZmxhZ3NfdG9fdHlwZShmbGFncyksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3RvX2FjY2Vz
cyhmbGFncyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgX21mbihvbGRfbWZuKSk7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBlbHNlCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysr
IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaApAQCAtODkxLDcgKzg5MSw4
IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnUK
IC8qCiAgKiBwMm0gdHlwZSB0byBJT01NVSBmbGFncwogICovCi1zdGF0aWMg
aW5saW5lIHVuc2lnbmVkIGludCBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90
eXBlX3QgcDJtdCwgbWZuX3QgbWZuKQorc3RhdGljIGlubGluZSB1bnNpZ25l
ZCBpbnQgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fdHlwZV90IHAybXQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHAybV9hY2Nlc3NfdCBwMm1hLCBtZm5fdCBtZm4pCiB7CiAgICAgdW5zaWdu
ZWQgaW50IGZsYWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-0a.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-0a.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBmaXggUG9EIGFjY291bnRpbmcgaW4gZ3Vlc3RfcGh5c21h
cF9hZGRfZW50cnkoKQoKVGhlIGluaXRpYWwgb2JzZXJ2YXRpb24gd2FzIHRo
YXQgdGhlIG1mbl92YWxpZCgpIGNoZWNrIGNvbWVzIHRvbyBsYXRlOgpOZWl0
aGVyIG1mbl9hZGQoKSBub3IgbWZuX3RvX3BhZ2UoKSAobGV0IGFsb25lIGRl
LXJlZmVyZW5jaW5nIHRoZQpyZXN1bHQgb2YgdGhlIGxhdHRlcikgYXJlIHZh
bGlkIGZvciBNRk5zIGZhaWxpbmcgdGhpcyBjaGVjay4gTW92ZSBpdCB1cAph
bmQgLSBub3RpY2luZyB0aGF0IHRoZXJlJ3Mgbm8gY2FsbGVyIGRvaW5nIHNv
IC0gYWxzbyBhZGQgYW4gYXNzZXJ0aW9uCnRoYXQgdGhpcyBzaG91bGQgbmV2
ZXIgcHJvZHVjZSAiZmFsc2UiIGhlcmUuCgpJbiB0dXJuIHRoaXMgd291bGQg
aGF2ZSBtZWFudCB0aGF0IHRoZSAiZWxzZSIgdG8gdGhhdCBpZigpIGNvdWxk
IG5vdyBnbwphd2F5LCB3aGljaCBkaWRuJ3Qgc2VlbSByaWdodCBhdCBhbGwu
IEFuZCBpbmRlZWQsIGNvbnNpZGVyaW5nIGNhbGxlcnMKbGlrZSBtZW1vcnlf
ZXhjaGFuZ2UoKSBvciB2YXJpb3VzIGdyYW50IHRhYmxlIGZ1bmN0aW9ucywg
dGhlIFBvRAphY2NvdW50aW5nIHNob3VsZCBoYXZlIGJlZW4gb3V0c2lkZSBv
ZiB0aGF0IGlmKCkgZnJvbSB0aGUgdmVyeQpiZWdpbm5pbmcuCgpTaWduZWQt
b2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkFja2Vk
LWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29t
PgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jCisrKyBiL3hlbi9hcmNo
L3g4Ni9tbS9wMm0uYwpAQCAtNzk0LDYgKzc5NCwxMiBAQCBndWVzdF9waHlz
bWFwX2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgaWYgKCBwMm1f
aXNfZm9yZWlnbih0KSApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCisg
ICAgaWYgKCAhbWZuX3ZhbGlkKG1mbikgKQorICAgIHsKKyAgICAgICAgQVNT
RVJUX1VOUkVBQ0hBQkxFKCk7CisgICAgICAgIHJldHVybiAtRUlOVkFMOwor
ICAgIH0KKwogICAgIHAybV9sb2NrKHAybSk7CiAKICAgICBQMk1fREVCVUco
ImFkZGluZyBnZm49JSNseCBtZm49JSNseFxuIiwgZ2ZuX3goZ2ZuKSwgbWZu
X3gobWZuKSk7CkBAIC04OTQsMTIgKzkwMCwxMyBAQCBndWVzdF9waHlzbWFw
X2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgfQogCiAgICAgLyog
Tm93LCBhY3R1YWxseSBkbyB0aGUgdHdvLXdheSBtYXBwaW5nICovCi0gICAg
aWYgKCBtZm5fdmFsaWQobWZuKSApCisgICAgcmMgPSBwMm1fc2V0X2VudHJ5
KHAybSwgZ2ZuLCBtZm4sIHBhZ2Vfb3JkZXIsIHQsIHAybS0+ZGVmYXVsdF9h
Y2Nlc3MpOworICAgIGlmICggcmMgPT0gMCApCiAgICAgewotICAgICAgICBy
YyA9IHAybV9zZXRfZW50cnkocDJtLCBnZm4sIG1mbiwgcGFnZV9vcmRlciwg
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybS0+ZGVmYXVsdF9h
Y2Nlc3MpOwotICAgICAgICBpZiAoIHJjICkKLSAgICAgICAgICAgIGdvdG8g
b3V0OyAvKiBGYWlsZWQgdG8gdXBkYXRlIHAybSwgYmFpbCB3aXRob3V0IHVw
ZGF0aW5nIG0ycC4gKi8KKyAgICAgICAgcG9kX2xvY2socDJtKTsKKyAgICAg
ICAgcDJtLT5wb2QuZW50cnlfY291bnQgLT0gcG9kX2NvdW50OworICAgICAg
ICBCVUdfT04ocDJtLT5wb2QuZW50cnlfY291bnQgPCAwKTsKKyAgICAgICAg
cG9kX3VubG9jayhwMm0pOwogCiAgICAgICAgIGlmICggIXAybV9pc19ncmFu
dCh0KSApCiAgICAgICAgIHsKQEAgLTkwOCwyMiArOTE1LDcgQEAgZ3Vlc3Rf
cGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAqZAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdmbl94KGdmbl9hZGQoZ2ZuLCBp
KSkpOwogICAgICAgICB9CiAgICAgfQotICAgIGVsc2UKLSAgICB7Ci0gICAg
ICAgIGdkcHJpbnRrKFhFTkxPR19XQVJOSU5HLCAiQWRkaW5nIGJhZCBtZm4g
dG8gcDJtIG1hcCAoJSNseCAtPiAlI2x4KVxuIiwKLSAgICAgICAgICAgICAg
ICAgZ2ZuX3goZ2ZuKSwgbWZuX3gobWZuKSk7Ci0gICAgICAgIHJjID0gcDJt
X3NldF9lbnRyeShwMm0sIGdmbiwgSU5WQUxJRF9NRk4sIHBhZ2Vfb3JkZXIs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1faW52YWxpZCwgcDJt
LT5kZWZhdWx0X2FjY2Vzcyk7Ci0gICAgICAgIGlmICggcmMgPT0gMCApCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIHBvZF9sb2NrKHAybSk7Ci0gICAgICAg
ICAgICBwMm0tPnBvZC5lbnRyeV9jb3VudCAtPSBwb2RfY291bnQ7Ci0gICAg
ICAgICAgICBCVUdfT04ocDJtLT5wb2QuZW50cnlfY291bnQgPCAwKTsKLSAg
ICAgICAgICAgIHBvZF91bmxvY2socDJtKTsKLSAgICAgICAgfQotICAgIH0K
IAotb3V0OgogICAgIHAybV91bmxvY2socDJtKTsKIAogICAgIHJldHVybiBy
YzsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-0b.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-0b.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBpZ25vcmUgcDJtX3JlbW92ZV9wYWdlKCkncyBy
ZXR1cm4gdmFsdWUKCkl0J3Mgbm90IHZlcnkgbmljZSB0byByZXR1cm4gZnJv
bSBndWVzdF9waHlzbWFwX2FkZF9lbnRyeSgpIGFmdGVyCnBlcmhhcHMgYWxy
ZWFkeSBoYXZpbmcgbWFkZSBzb21lIGNoYW5nZXMgdG8gdGhlIFAyTSwgYnV0
IHRoaXMgaXMgcHJlLQpleGlzdGluZyBwcmFjdGljZSBpbiB0aGUgZnVuY3Rp
b24sIGFuZCBpbW8gYmV0dGVyIHRoYW4gaWdub3JpbmcgZXJyb3JzLgoKVGFr
ZSB0aGUgbGliZXJ0eSBhbmQgcmVwbGFjZSBhbiBtZm5fYWRkKCkgaW5zdGFu
Y2Ugd2l0aCBhIGxvY2FsIHZhcmlhYmxlCmFscmVhZHkgaG9sZGluZyB0aGUg
cmVzdWx0IChhcyBwcm92ZW4gYnkgdGhlIGNoZWNrIGltbWVkaWF0ZWx5IGFo
ZWFkKS4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBz
dXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVycmFudCA8cGF1bC5kdXJy
YW50QGNpdHJpeC5jb20+CkFja2VkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRy
ZXcuY29vcGVyM0BjaXRyaXguY29tPgoKLS0tIGEveGVuL2FyY2gveDg2L21t
L3AybS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtNzAyLDgg
KzcwMiw3IEBAIHZvaWQgcDJtX2ZpbmFsX3RlYXJkb3duKHN0cnVjdCBkb21h
aW4gKmQKICAgICBwMm1fdGVhcmRvd25faG9zdHAybShkKTsKIH0KIAotCi1z
dGF0aWMgaW50CitzdGF0aWMgaW50IF9fbXVzdF9jaGVjawogcDJtX3JlbW92
ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIHVuc2lnbmVkIGxvbmcg
Z2ZuX2wsIHVuc2lnbmVkIGxvbmcgbWZuLAogICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGludCBwYWdlX29yZGVyKQogewpAQCAtODkyLDkgKzg5MSw5IEBA
IGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAg
ICAgICAgICAgICAgICBBU1NFUlQobWZuX3ZhbGlkKG9tZm4pKTsKICAgICAg
ICAgICAgICAgICBQMk1fREVCVUcoIm9sZCBnZm49JSNseCAtPiBtZm4gJSNs
eFxuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3gob2dmbikg
LCBtZm5feChvbWZuKSk7Ci0gICAgICAgICAgICAgICAgaWYgKCBtZm5fZXEo
b21mbiwgbWZuX2FkZChtZm4sIGkpKSApCi0gICAgICAgICAgICAgICAgICAg
IHAybV9yZW1vdmVfcGFnZShwMm0sIGdmbl94KG9nZm4pLCBtZm5feChtZm5f
YWRkKG1mbiwgaSkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMCk7CisgICAgICAgICAgICAgICAgaWYgKCBtZm5fZXEob21mbiwg
bWZuX2FkZChtZm4sIGkpKSAmJgorICAgICAgICAgICAgICAgICAgICAgKHJj
ID0gcDJtX3JlbW92ZV9wYWdlKHAybSwgZ2ZuX3gob2dmbiksIG1mbl94KG9t
Zm4pLCAwKSkgKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTkxNiw2ICs5MTUs
NyBAQCBndWVzdF9waHlzbWFwX2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpk
CiAgICAgICAgIH0KICAgICB9CiAKKyBvdXQ6CiAgICAgcDJtX3VubG9jayhw
Mm0pOwogCiAgICAgcmV0dXJuIHJjOwpAQCAtMjM4NSw5ICsyMzg1LDkgQEAg
aW50IHAybV9jaGFuZ2VfYWx0cDJtX2dmbihzdHJ1Y3QgZG9tYWluCiAKICAg
ICBpZiAoIGdmbl9lcShuZXdfZ2ZuLCBJTlZBTElEX0dGTikgKQogICAgIHsK
LSAgICAgICAgaWYgKCBtZm5fdmFsaWQobWZuKSApCi0gICAgICAgICAgICBw
Mm1fcmVtb3ZlX3BhZ2UoYXAybSwgZ2ZuX3gob2xkX2dmbiksIG1mbl94KG1m
biksIFBBR0VfT1JERVJfNEspOwotICAgICAgICByYyA9IDA7CisgICAgICAg
IHJjID0gbWZuX3ZhbGlkKG1mbikKKyAgICAgICAgICAgICA/IHAybV9yZW1v
dmVfcGFnZShhcDJtLCBnZm5feChvbGRfZ2ZuKSwgbWZuX3gobWZuKSwgUEFH
RV9PUkRFUl80SykKKyAgICAgICAgICAgICA6IDA7CiAgICAgICAgIGdvdG8g
b3V0OwogICAgIH0KIAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-0c.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-0c.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBhc3NlcnQgdGhhdCB0aGUgcGFzc2VkIGluIE1G
TiBtYXRjaGVzIGZvciBhIHJlbW92ZQoKZ3Vlc3RfcGh5c21hcF9yZW1vdmVf
cGFnZSgpIGdldHMgaGFuZGVkIGFuIE1GTiBmcm9tIHRoZSBvdXRzaWRlLCB5
ZXQKdGFrZXMgdGhlIG5lY2Vzc2FyeSBsb2NrIHRvIHByZXZlbnQgZnVydGhl
ciBjaGFuZ2VzIHRvIHRoZSBHRk4gPC0+IE1GTgptYXBwaW5nIGl0c2VsZi4g
V2hpbGUgc29tZSBjYWxsZXJzLCBpbiBwYXJ0aWN1bGFyIGd1ZXN0X3JlbW92
ZV9wYWdlKCkKKGJ5IHdheSBvZiBoYXZpbmcgY2FsbGVkIGdldF9nZm5fcXVl
cnkoKSksIGhvbGQgdGhlIEdGTiBsb2NrIGFscmVhZHksCnZhcmlvdXMgb3Ro
ZXJzIChtb3N0IG5vdGFibHkgcGVyaGFwcyB0aGUgMm5kIGluc3RhbmNlIGlu
Cnhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoKSkgZG9uJ3QuIFdoaWxlIGl0
IGFsc28gaXMgYW4gb3B0aW9uIHRvIGZpeAphbGwgdGhlIGNhbGxlcnMsIGRl
YWwgd2l0aCB0aGUgaXNzdWUgaW4gcDJtX3JlbW92ZV9wYWdlKCkgaW5zdGVh
ZDoKUmVwbGFjZSB0aGUgQVNTRVJUKCkgYnkgYSBjb25kaXRpb25hbCBhbmQg
c3BsaXQgdGhlIGxvb3AgaW50byB0d28sIHN1Y2gKdGhhdCBhbGwgY2hlY2tp
bmcgZ2V0cyBkb25lIGJlZm9yZSBhbnkgbW9kaWZpY2F0aW9uIHdvdWxkIG9j
Y3VyLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1
c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJh
bnRAY2l0cml4LmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJl
dy5jb29wZXIzQGNpdHJpeC5jb20+CgotLS0gYS94ZW4vYXJjaC94ODYvbW0v
cDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC03MDgsNyAr
NzA4LDYgQEAgcDJtX3JlbW92ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpw
Mm0sCiB7CiAgICAgdW5zaWduZWQgbG9uZyBpOwogICAgIGdmbl90IGdmbiA9
IF9nZm4oZ2ZuX2wpOwotICAgIG1mbl90IG1mbl9yZXR1cm47CiAgICAgcDJt
X3R5cGVfdCB0OwogICAgIHAybV9hY2Nlc3NfdCBhOwogCkBAIC03MTksMTUg
KzcxOCwyNiBAQCBwMm1fcmVtb3ZlX3BhZ2Uoc3RydWN0IHAybV9kb21haW4g
KnAybSwKICAgICBBU1NFUlQoZ2ZuX2xvY2tlZF9ieV9tZShwMm0sIGdmbikp
OwogICAgIFAyTV9ERUJVRygicmVtb3ZpbmcgZ2ZuPSUjbHggbWZuPSUjbHhc
biIsIGdmbl9sLCBtZm4pOwogCisgICAgZm9yICggaSA9IDA7IGkgPCAoMVVM
IDw8IHBhZ2Vfb3JkZXIpOyApCisgICAgeworICAgICAgICB1bnNpZ25lZCBp
bnQgY3VyX29yZGVyOworICAgICAgICBtZm5fdCBtZm5fcmV0dXJuID0gcDJt
LT5nZXRfZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZ0LCAmYSwgMCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZj
dXJfb3JkZXIsIE5VTEwpOworCisgICAgICAgIGlmICggcDJtX2lzX3ZhbGlk
KHQpICYmCisgICAgICAgICAgICAgKCFtZm5fdmFsaWQoX21mbihtZm4pKSB8
fCBtZm4gKyBpICE9IG1mbl94KG1mbl9yZXR1cm4pKSApCisgICAgICAgICAg
ICByZXR1cm4gLUVJTFNFUTsKKworICAgICAgICBpICs9ICgxVUwgPDwgY3Vy
X29yZGVyKSAtICgoZ2ZuX2wgKyBpKSAmICgoMVVMIDw8IGN1cl9vcmRlcikg
LSAxKSk7CisgICAgfQorCiAgICAgaWYgKCBtZm5fdmFsaWQoX21mbihtZm4p
KSApCiAgICAgewogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwg
cGFnZV9vcmRlcik7IGkrKyApCiAgICAgICAgIHsKLSAgICAgICAgICAgIG1m
bl9yZXR1cm4gPSBwMm0tPmdldF9lbnRyeShwMm0sIGdmbl9hZGQoZ2ZuLCBp
KSwgJnQsICZhLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE5VTEwsIE5VTEwpOworICAgICAgICAgICAgcDJtLT5nZXRf
ZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZ0LCAmYSwgMCwgTlVMTCwg
TlVMTCk7CiAgICAgICAgICAgICBpZiAoICFwMm1faXNfZ3JhbnQodCkgJiYg
IXAybV9pc19zaGFyZWQodCkgJiYgIXAybV9pc19mb3JlaWduKHQpICkKICAg
ICAgICAgICAgICAgICBzZXRfZ3Bmbl9mcm9tX21mbihtZm4raSwgSU5WQUxJ
RF9NMlBfRU5UUlkpOwotICAgICAgICAgICAgQVNTRVJUKCAhcDJtX2lzX3Zh
bGlkKHQpIHx8IG1mbiArIGkgPT0gbWZuX3gobWZuX3JldHVybikgKTsKICAg
ICAgICAgfQogICAgIH0KICAgICByZXR1cm4gcDJtX3NldF9lbnRyeShwMm0s
IGdmbiwgSU5WQUxJRF9NRk4sIHBhZ2Vfb3JkZXIsIHAybV9pbnZhbGlkLAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9hY3BpLmMKQEAgLTk4LDEyICs5OCwyMSBAQCBzdGF0aWMgc3RydWN0
IGFtZF9pb21tdSAqIF9faW5pdCBmaW5kX2lvCiAgICAgcmV0dXJuIE5VTEw7
CiB9CiAKLXN0YXRpYyB2b2lkIF9faW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZSgKLSAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWlu
dDY0X3QgYmFzZSwgdWludDY0X3QgbGltaXQpCitzdGF0aWMgaW50IF9faW5p
dCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZSgKKyAgICBzdHJ1Y3Qg
YW1kX2lvbW11ICppb21tdSwgdWludDY0X3QgYmFzZSwgdWludDY0X3QgbGlt
aXQsCisgICAgYm9vbCBhbGwsIGJvb2wgaXcsIGJvb2wgaXIpCiB7CisgICAg
aWYgKCAhaXIgfHwgIWl3ICkKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKKwog
ICAgIC8qIG5lZWQgdG8gZXh0ZW5kIGV4Y2x1c2lvbiByYW5nZT8gKi8KICAg
ICBpZiAoIGlvbW11LT5leGNsdXNpb25fZW5hYmxlICkKICAgICB7CisgICAg
ICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9saW1pdCArIFBBR0VfU0laRSA8
IGJhc2UgfHwKKyAgICAgICAgICAgICBsaW1pdCArIFBBR0VfU0laRSA8IGlv
bW11LT5leGNsdXNpb25fYmFzZSB8fAorICAgICAgICAgICAgIGlvbW11LT5l
eGNsdXNpb25fYWxsb3dfYWxsICE9IGFsbCApCisgICAgICAgICAgICByZXR1
cm4gLUVCVVNZOworCiAgICAgICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9i
YXNlIDwgYmFzZSApCiAgICAgICAgICAgICBiYXNlID0gaW9tbXUtPmV4Y2x1
c2lvbl9iYXNlOwogICAgICAgICBpZiAoIGlvbW11LT5leGNsdXNpb25fbGlt
aXQgPiBsaW1pdCApCkBAIC0xMTEsMTYgKzEyMCwxMSBAQCBzdGF0aWMgdm9p
ZCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpCiAgICAgfQogCiAgICAg
aW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgPSBJT01NVV9DT05UUk9MX0VOQUJM
RUQ7CisgICAgaW9tbXUtPmV4Y2x1c2lvbl9hbGxvd19hbGwgPSBhbGw7CiAg
ICAgaW9tbXUtPmV4Y2x1c2lvbl9iYXNlID0gYmFzZTsKICAgICBpb21tdS0+
ZXhjbHVzaW9uX2xpbWl0ID0gbGltaXQ7Ci19CiAKLXN0YXRpYyB2b2lkIF9f
aW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9hbGwoCi0gICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXUsCi0gICAgdW5zaWduZWQgbG9uZyBi
YXNlLCB1bnNpZ25lZCBsb25nIGxpbWl0KQotewotICAgIHJlc2VydmVfaW9t
bXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCk7Ci0gICAg
aW9tbXUtPmV4Y2x1c2lvbl9hbGxvd19hbGwgPSBJT01NVV9DT05UUk9MX0VO
QUJMRUQ7CisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIF9faW5p
dCByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKApAQCAtMTU4LDYgKzE2
Miw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW4KICAgICB1bnNpZ25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBs
ZW5ndGg7CiAgICAgc3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgdW5z
aWduZWQgaW50IGJkZjsKKyAgICBpbnQgcmMgPSAwOwogCiAgICAgLyogaXMg
cGFydCBvZiBleGNsdXNpb24gcmFuZ2UgaW5zaWRlIG9mIElPTU1VIHZpcnR1
YWwgYWRkcmVzcyBzcGFjZT8gKi8KICAgICAvKiBub3RlOiAnbGltaXQnIHBh
cmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwpAQCAt
MTc5LDEwICsxODQsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJf
ZXhjbHVzaW9uX3JhbgogICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkK
ICAgICB7CiAgICAgICAgIGZvcl9lYWNoX2FtZF9pb21tdSggaW9tbXUgKQot
ICAgICAgICAgICAgcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2VfYWxs
KGlvbW11LCBiYXNlLCBsaW1pdCk7CisgICAgICAgIHsKKyAgICAgICAgICAg
IHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJh
c2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0cnVlIC8qIGFsbCAqLywgaXcsIGlyKTsKKyAgICAg
ICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHJj
OwogfQogCiBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25f
cmFuZ2VfZm9yX2RldmljZSgKQEAgLTE5Myw2ICsyMDMsNyBAQCBzdGF0aWMg
aW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgdW5zaWdu
ZWQgbG9uZyByYW5nZV90b3AsIGlvbW11X3RvcCwgbGVuZ3RoOwogICAgIHN0
cnVjdCBhbWRfaW9tbXUgKmlvbW11OwogICAgIHUxNiByZXE7CisgICAgaW50
IHJjID0gMDsKIAogICAgIGlvbW11ID0gZmluZF9pb21tdV9mb3JfZGV2aWNl
KHNlZywgYmRmKTsKICAgICBpZiAoICFpb21tdSApCkBAIC0yMjIsMTIgKzIz
MywxMyBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25f
cmFuCiAgICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNl
dHRpbmdzIGZvciBkZXZpY2UgKi8KICAgICBpZiAoIGxpbWl0ID49IGlvbW11
X3RvcCAgKQogICAgIHsKLSAgICAgICAgcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0KTsKKyAgICAgICAgcmMgPSBy
ZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGlt
aXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwogICAgICAgICBpdnJzX21h
cHBpbmdzW2JkZl0uZHRlX2FsbG93X2V4Y2x1c2lvbiA9IElPTU1VX0NPTlRS
T0xfRU5BQkxFRDsKICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFdLmR0ZV9h
bGxvd19leGNsdXNpb24gPSBJT01NVV9DT05UUk9MX0VOQUJMRUQ7CiAgICAg
fQogCi0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0
aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2lv
bW11X2RldmljZXMoCkBAIC0yMzcsNiArMjQ5LDcgQEAgc3RhdGljIGludCBf
X2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgIHVuc2lnbmVkIGxv
bmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAgICB1bnNpZ25l
ZCBpbnQgYmRmOwogICAgIHUxNiByZXE7CisgICAgaW50IHJjID0gMDsKIAog
ICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJ
T01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICovCiAgICAgLyogbm90ZTog
J2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWdu
ZWQgKi8KQEAgLTI2Nyw4ICsyODAsMTAgQEAgc3RhdGljIGludCBfX2luaXQg
cmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogCiAgICAgLyogcmVnaXN0ZXIgSU9N
TVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzICovCiAgICAgaWYgKCBsaW1p
dCA+PSBpb21tdV90b3AgKQotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZV9hbGwoaW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAgICByZXR1
cm4gMDsKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9y
YW5nZShpb21tdSwgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3LCBp
cik7CisKKyAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0
IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdCgK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtMTI3LDMyICsxMjcsNDggQEAgc3Rh
dGljIGludCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpbwogICAgIHJl
dHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCBfX2luaXQgcmVzZXJ2ZV91bml0
eV9tYXBfZm9yX2RldmljZSgKLSAgICB1MTYgc2VnLCB1MTYgYmRmLCB1bnNp
Z25lZCBsb25nIGJhc2UsCi0gICAgdW5zaWduZWQgbG9uZyBsZW5ndGgsIHU4
IGl3LCB1OCBpcikKK3N0YXRpYyBpbnQgX19pbml0IHJlc2VydmVfdW5pdHlf
bWFwX2Zvcl9kZXZpY2UoCisgICAgdWludDE2X3Qgc2VnLCB1aW50MTZfdCBi
ZGYsIHVuc2lnbmVkIGxvbmcgYmFzZSwKKyAgICB1bnNpZ25lZCBsb25nIGxl
bmd0aCwgYm9vbCBpdywgYm9vbCBpcikKIHsKICAgICBzdHJ1Y3QgaXZyc19t
YXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHNl
Zyk7Ci0gICAgdW5zaWduZWQgbG9uZyBvbGRfdG9wLCBuZXdfdG9wOworICAg
IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwID0gaXZyc19tYXBw
aW5nc1tiZGZdLnVuaXR5X21hcDsKIAotICAgIC8qIG5lZWQgdG8gZXh0ZW5k
IHVuaXR5LW1hcHBlZCByYW5nZT8gKi8KLSAgICBpZiAoIGl2cnNfbWFwcGlu
Z3NbYmRmXS51bml0eV9tYXBfZW5hYmxlICkKKyAgICAvKiBDaGVjayBmb3Ig
b3ZlcmxhcHMuICovCisgICAgZm9yICggOyB1bml0eV9tYXA7IHVuaXR5X21h
cCA9IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewotICAgICAgICBvbGRfdG9w
ID0gaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQgKwotICAg
ICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2VfbGVuZ3Ro
OwotICAgICAgICBuZXdfdG9wID0gYmFzZSArIGxlbmd0aDsKLSAgICAgICAg
aWYgKCBvbGRfdG9wID4gbmV3X3RvcCApCi0gICAgICAgICAgICBuZXdfdG9w
ID0gb2xkX3RvcDsKLSAgICAgICAgaWYgKCBpdnJzX21hcHBpbmdzW2JkZl0u
YWRkcl9yYW5nZV9zdGFydCA8IGJhc2UgKQotICAgICAgICAgICAgYmFzZSA9
IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3JhbmdlX3N0YXJ0OwotICAgICAg
ICBsZW5ndGggPSBuZXdfdG9wIC0gYmFzZTsKLSAgICB9Ci0KLSAgICAvKiBl
eHRlbmQgci93IHBlcm1pc3Npb21zIGFuZCBrZWVwIGFnZ3JlZ2F0ZSAqLwot
ICAgIGl2cnNfbWFwcGluZ3NbYmRmXS53cml0ZV9wZXJtaXNzaW9uID0gaXc7
Ci0gICAgaXZyc19tYXBwaW5nc1tiZGZdLnJlYWRfcGVybWlzc2lvbiA9IGly
OwotICAgIGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXBfZW5hYmxlID0g
SU9NTVVfQ09OVFJPTF9FTkFCTEVEOwotICAgIGl2cnNfbWFwcGluZ3NbYmRm
XS5hZGRyX3JhbmdlX3N0YXJ0ID0gYmFzZTsKLSAgICBpdnJzX21hcHBpbmdz
W2JkZl0uYWRkcl9yYW5nZV9sZW5ndGggPSBsZW5ndGg7CisgICAgICAgIC8q
CisgICAgICAgICAqIEV4YWN0IG1hdGNoZXMgYXJlIG9rYXkuIFRoaXMgY2Fu
IGluIHBhcnRpY3VsYXIgaGFwcGVuIHdoZW4KKyAgICAgICAgICogcmVnaXN0
ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3
aWNlIGZvciB0aGUKKyAgICAgICAgICogc2FtZSAocyxiLGQsZikuCisgICAg
ICAgICAqLworICAgICAgICBpZiAoIGJhc2UgPT0gdW5pdHlfbWFwLT5hZGRy
ICYmIGxlbmd0aCA9PSB1bml0eV9tYXAtPmxlbmd0aCAmJgorICAgICAgICAg
ICAgIGlyID09IHVuaXR5X21hcC0+cmVhZCAmJiBpdyA9PSB1bml0eV9tYXAt
PndyaXRlICkKKyAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgIGlm
ICggdW5pdHlfbWFwLT5hZGRyICsgdW5pdHlfbWFwLT5sZW5ndGggPiBiYXNl
ICYmCisgICAgICAgICAgICAgYmFzZSArIGxlbmd0aCA+IHVuaXR5X21hcC0+
YWRkciApCisgICAgICAgIHsKKyAgICAgICAgICAgIEFNRF9JT01NVV9ERUJV
RygiSVZNRCBFcnJvcjogb3ZlcmxhcCBbJWx4LCVseCkgdnMgWyVseCwlbHgp
XG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UsIGJhc2Ug
KyBsZW5ndGgsIHVuaXR5X21hcC0+YWRkciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bml0eV9tYXAtPmFkZHIgKyB1bml0eV9tYXAtPmxlbmd0
aCk7CisgICAgICAgICAgICByZXR1cm4gLUVQRVJNOworICAgICAgICB9Cisg
ICAgfQorCisgICAgLyogUG9wdWxhdGUgYW5kIGluc2VydCBhIG5ldyB1bml0
eSBtYXAuICovCisgICAgdW5pdHlfbWFwID0geG1hbGxvYyhzdHJ1Y3QgaXZy
c191bml0eV9tYXApOworICAgIGlmICggIXVuaXR5X21hcCApCisgICAgICAg
IHJldHVybiAtRU5PTUVNOworCisgICAgdW5pdHlfbWFwLT5yZWFkID0gaXI7
CisgICAgdW5pdHlfbWFwLT53cml0ZSA9IGl3OworICAgIHVuaXR5X21hcC0+
YWRkciA9IGJhc2U7CisgICAgdW5pdHlfbWFwLT5sZW5ndGggPSBsZW5ndGg7
CisgICAgdW5pdHlfbWFwLT5uZXh0ID0gaXZyc19tYXBwaW5nc1tiZGZdLnVu
aXR5X21hcDsKKyAgICBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwID0g
dW5pdHlfbWFwOworCisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQg
X19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfYWxsX2Rldmlj
ZXMoCkBAIC0xNzUsMTMgKzE5MSwxMyBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgICAgIGxlbmd0aCA9IHJhbmdl
X3RvcCAtIGJhc2U7CiAgICAgICAgIC8qIHJlc2VydmUgci93IHVuaXR5LW1h
cHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMgKi8KICAgICAgICAgLyog
bm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9u
IHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9IDA7IGJkZiA8IGl2cnNf
YmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAgICAgICAgIHJlc2VydmVfdW5p
dHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcs
IGlyKTsKKyAgICAgICAgZm9yICggYmRmID0gMDsgIXJjICYmIGJkZiA8IGl2
cnNfYmRmX2VudHJpZXM7IGJkZisrICkKKyAgICAgICAgICAgIHJjID0gcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVu
Z3RoLCBpdywgaXIpOwogICAgICAgICAvKiBwdXNoICdiYXNlJyBqdXN0IG91
dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAgICAgIGJh
c2UgPSBpb21tdV90b3A7CiAgICAgfQogICAgIC8qIHJlZ2lzdGVyIElPTU1V
IGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICggbGltaXQg
Pj0gaW9tbXVfdG9wICkKKyAgICBpZiAoICFyYyAmJiBsaW1pdCA+PSBpb21t
dV90b3AgKQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBp
b21tdSApCiAgICAgICAgIHsKQEAgLTIyMywxNSArMjM5LDE1IEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICAgICAg
bGVuZ3RoID0gcmFuZ2VfdG9wIC0gYmFzZTsKICAgICAgICAgLyogcmVzZXJ2
ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2UgKi8KICAg
ICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUg
ZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsK
LSAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIHJl
cSwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOworICAgICAgICByYyA9IHJlc2Vy
dmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0
aCwgaXcsIGlyKSA/OgorICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsK
IAogICAgICAgICAvKiBwdXNoICdiYXNlJyBqdXN0IG91dHNpZGUgb2Ygdmly
dHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAgICAgIGJhc2UgPSBpb21tdV90
b3A7CiAgICAgfQogCiAgICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9u
IHJhbmdlIHNldHRpbmdzIGZvciBkZXZpY2UgKi8KLSAgICBpZiAoIGxpbWl0
ID49IGlvbW11X3RvcCAgKQorICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlv
bW11X3RvcCAgKQogICAgIHsKICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgLyog
YWxsICovLCBpdywgaXIpOwpAQCAtMjYyLDE1ICsyNzgsMTUgQEAgc3RhdGlj
IGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgICAgICBs
ZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwogICAgICAgICAvKiByZXNlcnZl
IHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICov
CiAgICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJlIHBhcnQgb2Yg
dGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAgICBmb3IgKCBiZGYgPSAw
OyBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCisgICAgICAgIGZv
ciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBi
ZGYrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIGlmICggaW9tbXUgPT0g
ZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQogICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
dywgaXIpOwogICAgICAgICAgICAgICAgIHJlcSA9IGdldF9pdnJzX21hcHBp
bmdzKGlvbW11LT5zZWcpW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKLSAgICAg
ICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11
LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyKTsKKyAgICAgICAg
ICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcikgPzoK
KyAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9k
ZXZpY2UoaW9tbXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3
LCBpcik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIApAQCAtMjc5LDcg
KzI5NSw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW4KICAgICB9CiAKICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNp
b24gcmFuZ2Ugc2V0dGluZ3MgKi8KLSAgICBpZiAoIGxpbWl0ID49IGlvbW11
X3RvcCApCisgICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkK
ICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShp
b21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3LCBpcik7CiAK
LS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQu
YworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW5p
dC5jCkBAIC0xMTg3LDcgKzExODcsNiBAQCBzdGF0aWMgaW50IF9faW5pdCBh
bGxvY19pdnJzX21hcHBpbmdzKHUxCiAgICAgewogICAgICAgICBpdnJzX21h
cHBpbmdzW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZCA9IGJkZjsKICAgICAgICAg
aXZyc19tYXBwaW5nc1tiZGZdLmR0ZV9hbGxvd19leGNsdXNpb24gPSBJT01N
VV9DT05UUk9MX0RJU0FCTEVEOwotICAgICAgICBpdnJzX21hcHBpbmdzW2Jk
Zl0udW5pdHlfbWFwX2VuYWJsZSA9IElPTU1VX0NPTlRST0xfRElTQUJMRUQ7
CiAgICAgICAgIGl2cnNfbWFwcGluZ3NbYmRmXS5pb21tdSA9IE5VTEw7CiAK
ICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmludHJlbWFwX3RhYmxlID0g
TlVMTDsKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9h
bWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQv
cGNpX2FtZF9pb21tdS5jCkBAIC0zNzIsMTUgKzM3MiwxNyBAQCBzdGF0aWMg
aW50IGFtZF9pb21tdV9hc3NpZ25fZGV2aWNlKHN0cnVjCiAgICAgc3RydWN0
IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBw
aW5ncyhwZGV2LT5zZWcpOwogICAgIGludCBiZGYgPSBQQ0lfQkRGMihwZGV2
LT5idXMsIGRldmZuKTsKICAgICBpbnQgcmVxX2lkID0gZ2V0X2RtYV9yZXF1
ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYpOworICAgIGNvbnN0IHN0cnVjdCBp
dnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwOwogCi0gICAgaWYgKCBpdnJzX21h
cHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwX2VuYWJsZSApCisgICAgZm9yICgg
dW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcDsg
dW5pdHlfbWFwOworICAgICAgICAgIHVuaXR5X21hcCA9IHVuaXR5X21hcC0+
bmV4dCApCiAgICAgewotICAgICAgICBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21h
aW5fdW5pdHlfbWFwKAotICAgICAgICAgICAgZCwKLSAgICAgICAgICAgIGl2
cnNfbWFwcGluZ3NbcmVxX2lkXS5hZGRyX3JhbmdlX3N0YXJ0LAotICAgICAg
ICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLmFkZHJfcmFuZ2VfbGVuZ3Ro
LAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLndyaXRlX3Bl
cm1pc3Npb24sCi0gICAgICAgICAgICBpdnJzX21hcHBpbmdzW3JlcV9pZF0u
cmVhZF9wZXJtaXNzaW9uKTsKKyAgICAgICAgaW50IHJjID0gYW1kX2lvbW11
X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAgICAgICAgICAgICAg
ICAgIGQsIHVuaXR5X21hcC0+YWRkciwgdW5pdHlfbWFwLT5sZW5ndGgsCisg
ICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPndyaXRlLCB1bml0eV9t
YXAtPnJlYWQpOworCisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAg
cmV0dXJuIHJjOwogICAgIH0KIAogICAgIHJldHVybiByZWFzc2lnbl9kZXZp
Y2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwgcGRldik7Ci0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvYW1kLWlvbW11LmgKKysrIGIveGVuL2luY2x1ZGUv
YXNtLXg4Ni9hbWQtaW9tbXUuaApAQCAtMTA4LDE1ICsxMDgsMTkgQEAgc3Ry
dWN0IGFtZF9pb21tdSB7CiAgICAgc3RydWN0IGxpc3RfaGVhZCBhdHNfZGV2
aWNlczsKIH07CiAKK3N0cnVjdCBpdnJzX3VuaXR5X21hcCB7CisgICAgYm9v
bCByZWFkOjE7CisgICAgYm9vbCB3cml0ZToxOworICAgIHBhZGRyX3QgYWRk
cjsKKyAgICB1bnNpZ25lZCBsb25nIGxlbmd0aDsKKyAgICBzdHJ1Y3QgaXZy
c191bml0eV9tYXAgKm5leHQ7Cit9OworCiBzdHJ1Y3QgaXZyc19tYXBwaW5n
cyB7CiAgICAgdTE2IGR0ZV9yZXF1ZXN0b3JfaWQ7CiAgICAgdTggZHRlX2Fs
bG93X2V4Y2x1c2lvbjsKLSAgICB1OCB1bml0eV9tYXBfZW5hYmxlOwotICAg
IHU4IHdyaXRlX3Blcm1pc3Npb247Ci0gICAgdTggcmVhZF9wZXJtaXNzaW9u
OwotICAgIHVuc2lnbmVkIGxvbmcgYWRkcl9yYW5nZV9zdGFydDsKLSAgICB1
bnNpZ25lZCBsb25nIGFkZHJfcmFuZ2VfbGVuZ3RoOwogICAgIHN0cnVjdCBh
bWRfaW9tbXUgKmlvbW11OworICAgIHN0cnVjdCBpdnJzX3VuaXR5X21hcCAq
dW5pdHlfbWFwOwogCiAgICAgLyogcGVyIGRldmljZSBpbnRlcnJ1cHQgcmVt
YXBwaW5nIHRhYmxlICovCiAgICAgdm9pZCAqaW50cmVtYXBfdGFibGU7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0
LmMKQEAgLTcxMSw3ICs3MTEsNyBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sIGdmCiAgICAgdWludDhfdCBpcGF0ID0gMDsKICAg
ICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsKICAgICBib29s
X3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsKLSAgICB1bnNpZ25lZCBpbnQgaW9t
bXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7Cisg
ICAgdW5zaWduZWQgaW50IGlvbW11X2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBwMm1hLCBtZm4pOwogICAgIGJvb2xfdCBuZWVkc19zeW5j
ID0gMTsKICAgICBlcHRfZW50cnlfdCBvbGRfZW50cnkgPSB7IC5lcHRlID0g
MCB9OwogICAgIGVwdF9lbnRyeV90IG5ld19lbnRyeSA9IHsgLmVwdGUgPSAw
IH07CkBAIC04MzcsOCArODM3LDggQEAgZXB0X3NldF9lbnRyeShzdHJ1Y3Qg
cDJtX2RvbWFpbiAqcDJtLCBnZgogCiAgICAgICAgIC8qIFNhZmUgdG8gcmVh
ZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2UgaG9sZCB0aGUgcDJtIGxvY2sgKi8K
ICAgICAgICAgaWYgKCBlcHRfZW50cnktPm1mbiA9PSBuZXdfZW50cnkubWZu
ICYmCi0gICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhlcHRfZW50
cnktPnNhX3AybXQsIF9tZm4oZXB0X2VudHJ5LT5tZm4pKSA9PQotICAgICAg
ICAgICAgIGlvbW11X2ZsYWdzICkKKyAgICAgICAgICAgICBwMm1fZ2V0X2lv
bW11X2ZsYWdzKGVwdF9lbnRyeS0+c2FfcDJtdCwgZXB0X2VudHJ5LT5hY2Nl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKGVw
dF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVfZmxhZ3MgKQogICAgICAgICAgICAg
bmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMDsKIAogICAgICAgICBlcHRfcDJt
X3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3X2VudHJ5LCBwMm10LCBwMm1hKTsK
LS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wdC5jCisrKyBiL3hlbi9hcmNo
L3g4Ni9tbS9wMm0tcHQuYwpAQCAtNDcxLDYgKzQ3MSwxNiBAQCBpbnQgcDJt
X3B0X2hhbmRsZV9kZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAgICAgcmV0dXJu
IHJjOwogfQogCisvKiBSZWNvbnN0cnVjdCBhIGZha2UgcDJtX2FjY2Vzc190
IGZyb20gc3RvcmVkIFBURSBmbGFncy4gKi8KK3N0YXRpYyBwMm1fYWNjZXNz
X3QgcDJtX2ZsYWdzX3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7
CisgICAgaWYgKCBmbGFncyAmIF9QQUdFX1BSRVNFTlQgKQorICAgICAgICBy
ZXR1cm4gcDJtX2FjY2Vzc19uOworCisgICAgLyogTm8gbmVlZCB0byBsb29r
IGF0IF9QQUdFX05YIGZvciBub3cuICovCisgICAgcmV0dXJuIGZsYWdzICYg
X1BBR0VfUlcgPyBwMm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vzc19yOworfQor
CiAvKiBSZXR1cm5zOiAwIGZvciBzdWNjZXNzLCAtZXJybm8gZm9yIGZhaWx1
cmUgKi8KIHN0YXRpYyBpbnQKIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAy
bV9kb21haW4gKnAybSwgZ2ZuX3QgZ2ZuXywgbWZuX3QgbWZuLApAQCAtNDg3
LDcgKzQ5Nyw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21h
aW4gKnAybSwKICAgICBsMl9wZ2VudHJ5X3QgbDJlX2NvbnRlbnQ7CiAgICAg
bDNfcGdlbnRyeV90IGwzZV9jb250ZW50OwogICAgIGludCByYzsKLSAgICB1
bnNpZ25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBtZm4pOworICAgIHVuc2lnbmVkIGludCBpb21tdV9wdGVf
ZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIHAybWEsIG1mbik7
CiAgICAgLyoKICAgICAgKiBvbGRfbWZuIGFuZCBpb21tdV9vbGRfZmxhZ3Mg
Y29udHJvbCBwb3NzaWJsZSBmbHVzaC91cGRhdGUgbmVlZHMgb24gdGhlCiAg
ICAgICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBNRk4gb3IgZmxh
Z3MgKGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4KQEAgLTU1Niw2ICs1NjYs
NyBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0s
CiAgICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRfcGZuKCpwMm1f
ZW50cnkpOwogICAgICAgICAgICAgICAgIGlvbW11X29sZF9mbGFncyA9CiAg
ICAgICAgICAgICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxhZ3MocDJtX2Zs
YWdzX3RvX3R5cGUoZmxhZ3MpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHAybV9mbGFnc190b19hY2Nlc3MoZmxhZ3MpLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4o
b2xkX21mbikpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQpA
QCAtNjAyLDkgKzYxMywxMCBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRSSUVTKTsKICAgICAgICAgQVNT
RVJUKHAybV9lbnRyeSk7CiAgICAgICAgIG9sZF9tZm4gPSBsMWVfZ2V0X3Bm
bigqcDJtX2VudHJ5KTsKKyAgICAgICAgZmxhZ3MgPSBsMWVfZ2V0X2ZsYWdz
KCpwMm1fZW50cnkpOwogICAgICAgICBpb21tdV9vbGRfZmxhZ3MgPQotICAg
ICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlw
ZShsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7CisgICAgICAgICAg
ICBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9mbGFnc190b190eXBlKGZsYWdz
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdz
X3RvX2FjY2VzcyhmbGFncyksIF9tZm4ob2xkX21mbikpOwogCiAgICAgICAg
IGlmICggbWZuX3ZhbGlkKG1mbikgfHwgcDJtX2FsbG93c19pbnZhbGlkX21m
bihwMm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50ID0gcDJtX2wx
ZV9mcm9tX3BmbihtZm5feChtZm4pLApAQCAtNjQ4LDYgKzY2MCw3IEBAIHAy
bV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwKICAgICAg
ICAgICAgICAgICBvbGRfbWZuID0gbDFlX2dldF9wZm4oKnAybV9lbnRyeSk7
CiAgICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0KICAgICAgICAg
ICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9f
dHlwZShmbGFncyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZu
KSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0tLSBhL3hl
bi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNt
LXg4Ni9wMm0uaApAQCAtODM5LDcgKzgzOSw4IEBAIGludCBwMm1fYWx0cDJt
X3Byb3BhZ2F0ZV9jaGFuZ2Uoc3RydWN0IGQKIC8qCiAgKiBwMm0gdHlwZSB0
byBJT01NVSBmbGFncwogICovCi1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGlu
dCBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90eXBlX3QgcDJtdCwgbWZuX3Qg
bWZuKQorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2dldF9pb21t
dV9mbGFncyhwMm1fdHlwZV90IHAybXQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9hY2Nlc3NfdCBwMm1h
LCBtZm5fdCBtZm4pCiB7CiAgICAgdW5zaWduZWQgaW50IGZsYWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC0x
MTU3LDcgKzExNTcsOCBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShz
dHJ1Y3QgZG9tYWluCiAgICAgewogICAgICAgICBpZiAoICFuZWVkX2lvbW11
KGQpICkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICByZXR1cm4g
aW9tbXVfbWFwX3BhZ2UoZCwgZ2ZuX2wsIGdmbl9sLCBJT01NVUZfcmVhZGFi
bGV8SU9NTVVGX3dyaXRhYmxlKTsKKyAgICAgICAgcmV0dXJuIGlvbW11X21h
cF9wYWdlKGQsIGdmbl9sLCBnZm5fbCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHAybV9hY2Nlc3NfdG9faW9tbXVfZmxhZ3MocDJtYSkpOwog
ICAgIH0KIAogICAgIGdmbl9sb2NrKHAybSwgZ2ZuLCAwKTsKLS0tIGEveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMKKysrIGIveGVuL2Ry
aXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMKQEAgLTQyLDEyICs0Miw2
IEBACiAjaW5jbHVkZSAidnRkLmgiCiAjaW5jbHVkZSAiLi4vYXRzLmgiCiAK
LXN0cnVjdCBtYXBwZWRfcm1yciB7Ci0gICAgc3RydWN0IGxpc3RfaGVhZCBs
aXN0OwotICAgIHU2NCBiYXNlLCBlbmQ7Ci0gICAgdW5zaWduZWQgaW50IGNv
dW50OwotfTsKLQogLyogUG9zc2libGUgdW5maWx0ZXJlZCBMQVBJQy9NU0kg
bWVzc2FnZXMgZnJvbSB1bnRydXN0ZWQgc291cmNlcz8gKi8KIGJvb2wgX19y
ZWFkX21vc3RseSB1bnRydXN0ZWRfbXNpOwogCkBAIC0xNzg1LDE2ICsxNzc5
LDExIEBAIG91dDoKIHN0YXRpYyB2b2lkIGlvbW11X2RvbWFpbl90ZWFyZG93
bihzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBkb21haW5faW9t
bXUgKmhkID0gZG9tX2lvbW11KGQpOwotICAgIHN0cnVjdCBtYXBwZWRfcm1y
ciAqbXJtcnIsICp0bXA7CiAKICAgICBpZiAoIGxpc3RfZW1wdHkoJmFjcGlf
ZHJoZF91bml0cykgKQogICAgICAgICByZXR1cm47CiAKLSAgICBsaXN0X2Zv
cl9lYWNoX2VudHJ5X3NhZmUgKCBtcm1yciwgdG1wLCAmaGQtPmFyY2gubWFw
cGVkX3JtcnJzLCBsaXN0ICkKLSAgICB7Ci0gICAgICAgIGxpc3RfZGVsKCZt
cm1yci0+bGlzdCk7Ci0gICAgICAgIHhmcmVlKG1ybXJyKTsKLSAgICB9Cisg
ICAgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKGQpOwogCiAgICAgaWYg
KCBpb21tdV91c2VfaGFwX3B0KGQpICkKICAgICAgICAgcmV0dXJuOwpAQCAt
MTkwMyw3NCArMTg5Miw2IEBAIHN0YXRpYyB2b2lkIGlvbW11X3NldF9wZ2Qo
c3RydWN0IGRvbWFpbgogICAgICAgICBwYWdldGFibGVfZ2V0X3BhZGRyKHBh
Z2V0YWJsZV9mcm9tX21mbihwZ2RfbWZuKSk7CiB9CiAKLXN0YXRpYyBpbnQg
cm1ycl9pZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBkb21haW4gKmQsIGJvb2xf
dCBtYXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBzdHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1MzIgZmxhZykKLXsKLSAgICB1bnNpZ25l
ZCBsb25nIGJhc2VfcGZuID0gcm1yci0+YmFzZV9hZGRyZXNzID4+IFBBR0Vf
U0hJRlRfNEs7Ci0gICAgdW5zaWduZWQgbG9uZyBlbmRfcGZuID0gUEFHRV9B
TElHTl80SyhybXJyLT5lbmRfYWRkcmVzcykgPj4gUEFHRV9TSElGVF80SzsK
LSAgICBzdHJ1Y3QgbWFwcGVkX3JtcnIgKm1ybXJyOwotICAgIHN0cnVjdCBk
b21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwotCi0gICAgQVNTRVJU
KHBjaWRldnNfbG9ja2VkKCkpOwotICAgIEFTU0VSVChybXJyLT5iYXNlX2Fk
ZHJlc3MgPCBybXJyLT5lbmRfYWRkcmVzcyk7Ci0KLSAgICAvKgotICAgICAq
IE5vIG5lZWQgdG8gYWNxdWlyZSBoZC0+YXJjaC5tYXBwaW5nX2xvY2s6IEJv
dGggaW5zZXJ0aW9uIGFuZCByZW1vdmFsCi0gICAgICogZ2V0IGRvbmUgd2hp
bGUgaG9sZGluZyBwY2lkZXZzX2xvY2suCi0gICAgICovCi0gICAgbGlzdF9m
b3JfZWFjaF9lbnRyeSggbXJtcnIsICZoZC0+YXJjaC5tYXBwZWRfcm1ycnMs
IGxpc3QgKQotICAgIHsKLSAgICAgICAgaWYgKCBtcm1yci0+YmFzZSA9PSBy
bXJyLT5iYXNlX2FkZHJlc3MgJiYKLSAgICAgICAgICAgICBtcm1yci0+ZW5k
ID09IHJtcnItPmVuZF9hZGRyZXNzICkKLSAgICAgICAgewotICAgICAgICAg
ICAgaW50IHJldCA9IDA7Ci0KLSAgICAgICAgICAgIGlmICggbWFwICkKLSAg
ICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICArK21ybXJyLT5jb3VudDsK
LSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIH0KLQot
ICAgICAgICAgICAgaWYgKCAtLW1ybXJyLT5jb3VudCApCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgICAgIHdoaWxlICggYmFzZV9w
Zm4gPCBlbmRfcGZuICkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICBpZiAoIGNsZWFyX2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3Bmbikg
KQotICAgICAgICAgICAgICAgICAgICByZXQgPSAtRU5YSU87Ci0gICAgICAg
ICAgICAgICAgYmFzZV9wZm4rKzsKLSAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgbGlzdF9kZWwoJm1ybXJyLT5saXN0KTsKLSAgICAgICAgICAgIHhm
cmVlKG1ybXJyKTsKLSAgICAgICAgICAgIHJldHVybiByZXQ7Ci0gICAgICAg
IH0KLSAgICB9Ci0KLSAgICBpZiAoICFtYXAgKQotICAgICAgICByZXR1cm4g
LUVOT0VOVDsKLQotICAgIHdoaWxlICggYmFzZV9wZm4gPCBlbmRfcGZuICkK
LSAgICB7Ci0gICAgICAgIGludCBlcnIgPSBzZXRfaWRlbnRpdHlfcDJtX2Vu
dHJ5KGQsIGJhc2VfcGZuLCBwMm1fYWNjZXNzX3J3LCBmbGFnKTsKLQotICAg
ICAgICBpZiAoIGVyciApCi0gICAgICAgICAgICByZXR1cm4gZXJyOwotICAg
ICAgICBiYXNlX3BmbisrOwotICAgIH0KLQotICAgIG1ybXJyID0geG1hbGxv
YyhzdHJ1Y3QgbWFwcGVkX3JtcnIpOwotICAgIGlmICggIW1ybXJyICkKLSAg
ICAgICAgcmV0dXJuIC1FTk9NRU07Ci0gICAgbXJtcnItPmJhc2UgPSBybXJy
LT5iYXNlX2FkZHJlc3M7Ci0gICAgbXJtcnItPmVuZCA9IHJtcnItPmVuZF9h
ZGRyZXNzOwotICAgIG1ybXJyLT5jb3VudCA9IDE7Ci0gICAgbGlzdF9hZGRf
dGFpbCgmbXJtcnItPmxpc3QsICZoZC0+YXJjaC5tYXBwZWRfcm1ycnMpOwot
Ci0gICAgcmV0dXJuIDA7Ci19Ci0KIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVf
YWRkX2RldmljZSh1OCBkZXZmbiwgc3RydWN0IHBjaV9kZXYgKnBkZXYpCiB7
CiAgICAgc3RydWN0IGFjcGlfcm1ycl91bml0ICpybXJyOwpAQCAtMjAwMiw3
ICsxOTIzLDkgQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9hZGRfZGV2aWNl
KHU4IGRldgogICAgICAgICAgICAgICogU2luY2UgUk1SUnMgYXJlIGFsd2F5
cyByZXNlcnZlZCBpbiB0aGUgZTgyMCBtYXAgZm9yIHRoZSBoYXJkd2FyZQog
ICAgICAgICAgICAgICogZG9tYWluLCB0aGVyZSBzaG91bGRuJ3QgYmUgYSBj
b25mbGljdC4KICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgcmV0ID0g
cm1ycl9pZGVudGl0eV9tYXBwaW5nKHBkZXYtPmRvbWFpbiwgMSwgcm1yciwg
MCk7CisgICAgICAgICAgICByZXQgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5n
KHBkZXYtPmRvbWFpbiwgcDJtX2FjY2Vzc19ydywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcm1yci0+YmFzZV9hZGRyZXNz
LCBybXJyLT5lbmRfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMCk7CiAgICAgICAgICAgICBpZiAoIHJldCAp
CiAgICAgICAgICAgICAgICAgZHByaW50ayhYRU5MT0dfRVJSIFZURFBSRUZJ
WCwgImQlZDogUk1SUiBtYXBwaW5nIGZhaWxlZFxuIiwKICAgICAgICAgICAg
ICAgICAgICAgICAgIHBkZXYtPmRvbWFpbi0+ZG9tYWluX2lkKTsKQEAgLTIw
NDcsNyArMTk3MCw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfcmVtb3Zl
X2RldmljZSh1OAogICAgICAgICAgKiBBbnkgZmxhZyBpcyBub3RoaW5nIHRv
IGNsZWFyIHRoZXNlIG1hcHBpbmdzIGJ1dCBoZXJlCiAgICAgICAgICAqIGl0
cyBhbHdheXMgc2FmZSBhbmQgc3RyaWN0IHRvIHNldCAwLgogICAgICAgICAg
Ki8KLSAgICAgICAgcm1ycl9pZGVudGl0eV9tYXBwaW5nKHBkZXYtPmRvbWFp
biwgMCwgcm1yciwgMCk7CisgICAgICAgIGlvbW11X2lkZW50aXR5X21hcHBp
bmcocGRldi0+ZG9tYWluLCBwMm1fYWNjZXNzX3gsIHJtcnItPmJhc2VfYWRk
cmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5l
bmRfYWRkcmVzcywgMCk7CiAgICAgfQogCiAgICAgcmV0dXJuIGRvbWFpbl9j
b250ZXh0X3VubWFwKHBkZXYtPmRvbWFpbiwgZGV2Zm4sIHBkZXYpOwpAQCAt
MjIxNCw3ICsyMTM4LDggQEAgc3RhdGljIHZvaWQgX19od2RvbV9pbml0IHNl
dHVwX2h3ZG9tX3JtcgogICAgICAgICAgKiBkb21haW4sIHRoZXJlIHNob3Vs
ZG4ndCBiZSBhIGNvbmZsaWN0LiBTbyBpdHMgYWx3YXlzIHNhZmUgYW5kCiAg
ICAgICAgICAqIHN0cmljdCB0byBzZXQgMC4KICAgICAgICAgICovCi0gICAg
ICAgIHJldCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhkLCAxLCBybXJyLCAw
KTsKKyAgICAgICAgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhkLCBw
Mm1fYWNjZXNzX3J3LCBybXJyLT5iYXNlX2FkZHJlc3MsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcm1yci0+ZW5kX2FkZHJlc3Ms
IDApOwogICAgICAgICBpZiAoIHJldCApCiAgICAgICAgICAgICBkcHJpbnRr
KFhFTkxPR19FUlIgVlREUFJFRklYLAogICAgICAgICAgICAgICAgICAgICAg
IklPTU1VOiBtYXBwaW5nIHJlc2VydmVkIHJlZ2lvbiBmYWlsZWRcbiIpOwpA
QCAtMjM3MSw3ICsyMjk2LDkgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZp
Y2Vfb3duZXJzaGlwKAogICAgICAgICAgICAgICAgICAqIEFueSBSTVJSIGZs
YWcgaXMgYWx3YXlzIGlnbm9yZWQgd2hlbiByZW1vdmUgYSBkZXZpY2UsCiAg
ICAgICAgICAgICAgICAgICogYnV0IGl0cyBhbHdheXMgc2FmZSBhbmQgc3Ry
aWN0IHRvIHNldCAwLgogICAgICAgICAgICAgICAgICAqLwotICAgICAgICAg
ICAgICAgIHJldCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhzb3VyY2UsIDAs
IHJtcnIsIDApOworICAgICAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50
aXR5X21hcHBpbmcoc291cmNlLCBwMm1fYWNjZXNzX3gsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5iYXNl
X2FkZHJlc3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBybXJyLT5lbmRfYWRkcmVzcywgMCk7CiAgICAgICAgICAg
ICAgICAgaWYgKCByZXQgIT0gLUVOT0VOVCApCiAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiByZXQ7CiAgICAgICAgICAgICB9CkBAIC0yNDY4LDcgKzIz
OTUsOCBAQCBzdGF0aWMgaW50IGludGVsX2lvbW11X2Fzc2lnbl9kZXZpY2Uo
CiAgICAgICAgICAgICAgUENJX0JVUyhiZGYpID09IGJ1cyAmJgogICAgICAg
ICAgICAgIFBDSV9ERVZGTjIoYmRmKSA9PSBkZXZmbiApCiAgICAgICAgIHsK
LSAgICAgICAgICAgIHJldCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhkLCAx
LCBybXJyLCBmbGFnKTsKKyAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50
aXR5X21hcHBpbmcoZCwgcDJtX2FjY2Vzc19ydywgcm1yci0+YmFzZV9hZGRy
ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBybXJyLT5lbmRfYWRkcmVzcywgZmxhZyk7CiAgICAgICAgICAgICBpZiAo
IHJldCApCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgaW50IHJj
OwotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwor
KysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwpAQCAt
MTQ0LDcgKzE0NCw3IEBAIGludCBhcmNoX2lvbW11X2RvbWFpbl9pbml0KHN0
cnVjdCBkb21haW4KICAgICBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRv
bV9pb21tdShkKTsKIAogICAgIHNwaW5fbG9ja19pbml0KCZoZC0+YXJjaC5t
YXBwaW5nX2xvY2spOwotICAgIElOSVRfTElTVF9IRUFEKCZoZC0+YXJjaC5t
YXBwZWRfcm1ycnMpOworICAgIElOSVRfTElTVF9IRUFEKCZoZC0+YXJjaC5p
ZGVudGl0eV9tYXBzKTsKIAogICAgIHJldHVybiAwOwogfQpAQCAtMTUzLDYg
KzE1Myw5OSBAQCB2b2lkIGFyY2hfaW9tbXVfZG9tYWluX2Rlc3Ryb3koc3Ry
dWN0IGRvCiB7CiB9CiAKK3N0cnVjdCBpZGVudGl0eV9tYXAgeworICAgIHN0
cnVjdCBsaXN0X2hlYWQgbGlzdDsKKyAgICBwYWRkcl90IGJhc2UsIGVuZDsK
KyAgICBwMm1fYWNjZXNzX3QgYWNjZXNzOworICAgIHVuc2lnbmVkIGludCBj
b3VudDsKK307CisKK2ludCBpb21tdV9pZGVudGl0eV9tYXBwaW5nKHN0cnVj
dCBkb21haW4gKmQsIHAybV9hY2Nlc3NfdCBwMm1hLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGVuZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKQor
eworICAgIHVuc2lnbmVkIGxvbmcgYmFzZV9wZm4gPSBiYXNlID4+IFBBR0Vf
U0hJRlRfNEs7CisgICAgdW5zaWduZWQgbG9uZyBlbmRfcGZuID0gUEFHRV9B
TElHTl80SyhlbmQpID4+IFBBR0VfU0hJRlRfNEs7CisgICAgc3RydWN0IGlk
ZW50aXR5X21hcCAqbWFwOworICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhk
ID0gZG9tX2lvbW11KGQpOworCisgICAgQVNTRVJUKHBjaWRldnNfbG9ja2Vk
KCkpOworICAgIEFTU0VSVChiYXNlIDwgZW5kKTsKKworICAgIC8qCisgICAg
ICogTm8gbmVlZCB0byBhY3F1aXJlIGhkLT5hcmNoLm1hcHBpbmdfbG9jazog
Qm90aCBpbnNlcnRpb24gYW5kIHJlbW92YWwKKyAgICAgKiBnZXQgZG9uZSB3
aGlsZSBob2xkaW5nIHBjaWRldnNfbG9jay4KKyAgICAgKi8KKyAgICBsaXN0
X2Zvcl9lYWNoX2VudHJ5KCBtYXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBz
LCBsaXN0ICkKKyAgICB7CisgICAgICAgIGlmICggbWFwLT5iYXNlID09IGJh
c2UgJiYgbWFwLT5lbmQgPT0gZW5kICkKKyAgICAgICAgeworICAgICAgICAg
ICAgaW50IHJldCA9IDA7CisKKyAgICAgICAgICAgIGlmICggcDJtYSAhPSBw
Mm1fYWNjZXNzX3ggKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGlmICggbWFwLT5hY2Nlc3MgIT0gcDJtYSApCisgICAgICAgICAgICAgICAg
ICAgIHJldHVybiAtRUFERFJJTlVTRTsKKyAgICAgICAgICAgICAgICArK21h
cC0+Y291bnQ7CisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGlmICggLS1tYXAtPmNvdW50ICkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gMDsKKworICAgICAgICAgICAgd2hpbGUg
KCBiYXNlX3BmbiA8IGVuZF9wZm4gKQorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGlmICggY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KGQsIGJh
c2VfcGZuKSApCisgICAgICAgICAgICAgICAgICAgIHJldCA9IC1FTlhJTzsK
KyAgICAgICAgICAgICAgICBiYXNlX3BmbisrOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBsaXN0X2RlbCgmbWFwLT5saXN0KTsKKyAgICAgICAg
ICAgIHhmcmVlKG1hcCk7CisKKyAgICAgICAgICAgIHJldHVybiByZXQ7Cisg
ICAgICAgIH0KKworICAgICAgICBpZiAoIGVuZCA+PSBtYXAtPmJhc2UgJiYg
bWFwLT5lbmQgPj0gYmFzZSApCisgICAgICAgICAgICByZXR1cm4gLUVBRERS
SU5VU0U7CisgICAgfQorCisgICAgaWYgKCBwMm1hID09IHAybV9hY2Nlc3Nf
eCApCisgICAgICAgIHJldHVybiAtRU5PRU5UOworCisgICAgd2hpbGUgKCBi
YXNlX3BmbiA8IGVuZF9wZm4gKQorICAgIHsKKyAgICAgICAgaW50IGVyciA9
IHNldF9pZGVudGl0eV9wMm1fZW50cnkoZCwgYmFzZV9wZm4sIHAybWEsIGZs
YWcpOworCisgICAgICAgIGlmICggZXJyICkKKyAgICAgICAgICAgIHJldHVy
biBlcnI7CisgICAgICAgIGJhc2VfcGZuKys7CisgICAgfQorCisgICAgbWFw
ID0geG1hbGxvYyhzdHJ1Y3QgaWRlbnRpdHlfbWFwKTsKKyAgICBpZiAoICFt
YXAgKQorICAgICAgICByZXR1cm4gLUVOT01FTTsKKyAgICBtYXAtPmJhc2Ug
PSBiYXNlOworICAgIG1hcC0+ZW5kID0gZW5kOworICAgIG1hcC0+YWNjZXNz
ID0gcDJtYTsKKyAgICBtYXAtPmNvdW50ID0gMTsKKyAgICBsaXN0X2FkZF90
YWlsKCZtYXAtPmxpc3QsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzKTsKKwor
ICAgIHJldHVybiAwOworfQorCit2b2lkIGlvbW11X2lkZW50aXR5X21hcF90
ZWFyZG93bihzdHJ1Y3QgZG9tYWluICpkKQoreworICAgIHN0cnVjdCBkb21h
aW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOworICAgIHN0cnVjdCBpZGVu
dGl0eV9tYXAgKm1hcCwgKnRtcDsKKworICAgIGxpc3RfZm9yX2VhY2hfZW50
cnlfc2FmZSAoIG1hcCwgdG1wLCAmaGQtPmFyY2guaWRlbnRpdHlfbWFwcywg
bGlzdCApCisgICAgeworICAgICAgICBsaXN0X2RlbCgmbWFwLT5saXN0KTsK
KyAgICAgICAgeGZyZWUobWFwKTsKKyAgICB9Cit9CisKIC8qCiAgKiBMb2Nh
bCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCi0tLSBhL3hlbi9pbmNsdWRlL2Fz
bS14ODYvaW9tbXUuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2lvbW11
LmgKQEAgLTE2LDYgKzE2LDcgQEAKIAogI2luY2x1ZGUgPHhlbi9lcnJuby5o
PgogI2luY2x1ZGUgPHhlbi9saXN0Lmg+CisjaW5jbHVkZSA8eGVuL21lbV9h
Y2Nlc3MuaD4KICNpbmNsdWRlIDx4ZW4vc3BpbmxvY2suaD4KICNpbmNsdWRl
IDxhc20vcHJvY2Vzc29yLmg+CiAjaW5jbHVkZSA8YXNtL2h2bS92bXgvdm1j
cy5oPgpAQCAtMzYsNyArMzcsNyBAQCBzdHJ1Y3QgYXJjaF9pb21tdQogICAg
IHNwaW5sb2NrX3QgbWFwcGluZ19sb2NrOyAgICAgICAgICAgIC8qIGlvIHBh
Z2UgdGFibGUgbG9jayAqLwogICAgIGludCBhZ2F3OyAgICAgLyogYWRqdXN0
ZWQgZ3Vlc3QgYWRkcmVzcyB3aWR0aCwgMCBpcyBsZXZlbCAyIDMwLWJpdCAq
LwogICAgIHU2NCBpb21tdV9iaXRtYXA7ICAgICAgICAgICAgICAvKiBiaXRt
YXAgb2YgaW9tbXUocykgdGhhdCB0aGUgZG9tYWluIHVzZXMgKi8KLSAgICBz
dHJ1Y3QgbGlzdF9oZWFkIG1hcHBlZF9ybXJyczsKKyAgICBzdHJ1Y3QgbGlz
dF9oZWFkIGlkZW50aXR5X21hcHM7CiAKICAgICAvKiBhbWQgaW9tbXUgc3Vw
cG9ydCAqLwogICAgIGludCBwYWdpbmdfbW9kZTsKQEAgLTk0LDYgKzk1LDEx
IEBAIGJvb2xfdCBpb21tdV9zdXBwb3J0c19laW0odm9pZCk7CiBpbnQgaW9t
bXVfZW5hYmxlX3gyYXBpY19JUih2b2lkKTsKIHZvaWQgaW9tbXVfZGlzYWJs
ZV94MmFwaWNfSVIodm9pZCk7CiAKK2ludCBpb21tdV9pZGVudGl0eV9tYXBw
aW5nKHN0cnVjdCBkb21haW4gKmQsIHAybV9hY2Nlc3NfdCBwMm1hLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCBmbGFnKTsKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKHN0
cnVjdCBkb21haW4gKmQpOworCiBleHRlcm4gYm9vbCB1bnRydXN0ZWRfbXNp
OwogCiBpbnQgcGlfdXBkYXRlX2lydGUoY29uc3Qgc3RydWN0IHBpX2Rlc2Mg
KnBpX2Rlc2MsIGNvbnN0IHN0cnVjdCBwaXJxICpwaXJxLAotLS0gYS94ZW4v
aW5jbHVkZS9hc20teDg2L21lbV9hY2Nlc3MuaAorKysgYi94ZW4vaW5jbHVk
ZS9hc20teDg2L21lbV9hY2Nlc3MuaApAQCAtNDQsMTAgKzQ0LDggQEAgYm9v
bCBwMm1fbWVtX2FjY2Vzc19lbXVsYXRlX2NoZWNrKHN0cnVjdAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZtX2V2ZW50X3Jl
c3BvbnNlX3QgKnJzcCk7CiAKIC8qIFNhbml0eSBjaGVjayBmb3IgbWVtX2Fj
Y2VzcyBoYXJkd2FyZSBzdXBwb3J0ICovCi1zdGF0aWMgaW5saW5lIGJvb2wg
cDJtX21lbV9hY2Nlc3Nfc2FuaXR5X2NoZWNrKHN0cnVjdCBkb21haW4gKmQp
Ci17Ci0gICAgcmV0dXJuIGlzX2h2bV9kb21haW4oZCkgJiYgY3B1X2hhc192
bXggJiYgaGFwX2VuYWJsZWQoZCk7Ci19CisjZGVmaW5lIHAybV9tZW1fYWNj
ZXNzX3Nhbml0eV9jaGVjayhkKSBcCisgICAgKGlzX2h2bV9kb21haW4oZCkg
JiYgY3B1X2hhc192bXggJiYgaGFwX2VuYWJsZWQoZCkpCiAKICNlbmRpZiAv
Kl9fQVNNX1g4Nl9NRU1fQUNDRVNTX0hfXyAqLwogCi0tLSBhL3hlbi9pbmNs
dWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9w
Mm0uaApAQCAtODM2LDYgKzgzNiwzNCBAQCBpbnQgcDJtX2FsdHAybV9wcm9w
YWdhdGVfY2hhbmdlKHN0cnVjdCBkCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1mbl90IG1mbiwgdW5zaWduZWQgaW50IHBhZ2Vfb3JkZXIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV90eXBlX3Qg
cDJtdCwgcDJtX2FjY2Vzc190IHAybWEpOwogCisvKiBwMm0gYWNjZXNzIHRv
IElPTU1VIGZsYWdzICovCitzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBw
Mm1fYWNjZXNzX3RvX2lvbW11X2ZsYWdzKHAybV9hY2Nlc3NfdCBwMm1hKQor
eworICAgIHN3aXRjaCAoIHAybWEgKQorICAgIHsKKyAgICBjYXNlIHAybV9h
Y2Nlc3Nfcnc6CisgICAgY2FzZSBwMm1fYWNjZXNzX3J3eDoKKyAgICAgICAg
cmV0dXJuIElPTU1VRl9yZWFkYWJsZSB8IElPTU1VRl93cml0YWJsZTsKKwor
ICAgIGNhc2UgcDJtX2FjY2Vzc19yOgorICAgIGNhc2UgcDJtX2FjY2Vzc19y
eDoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcngycnc6CisgICAgICAgIHJldHVy
biBJT01NVUZfcmVhZGFibGU7CisKKyAgICBjYXNlIHAybV9hY2Nlc3NfdzoK
KyAgICBjYXNlIHAybV9hY2Nlc3Nfd3g6CisgICAgICAgIHJldHVybiBJT01N
VUZfd3JpdGFibGU7CisKKyAgICBjYXNlIHAybV9hY2Nlc3NfbjoKKyAgICBj
YXNlIHAybV9hY2Nlc3NfeDoKKyAgICBjYXNlIHAybV9hY2Nlc3NfbjJyd3g6
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIEFTU0VSVF9VTlJF
QUNIQUJMRSgpOworICAgIHJldHVybiAwOworfQorCiAvKgogICogcDJtIHR5
cGUgdG8gSU9NTVUgZmxhZ3MKICAqLwpAQCAtODU3LDkgKzg4NSwxMCBAQCBz
dGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBwMm1fZ2V0X2lvbW11CiAgICAg
ICAgIGZsYWdzID0gSU9NTVVGX3JlYWRhYmxlOwogICAgICAgICBicmVhazsK
ICAgICBjYXNlIHAybV9tbWlvX2RpcmVjdDoKLSAgICAgICAgZmxhZ3MgPSBJ
T01NVUZfcmVhZGFibGU7Ci0gICAgICAgIGlmICggIXJhbmdlc2V0X2NvbnRh
aW5zX3NpbmdsZXRvbihtbWlvX3JvX3JhbmdlcywgbWZuX3gobWZuKSkgKQot
ICAgICAgICAgICAgZmxhZ3MgfD0gSU9NTVVGX3dyaXRhYmxlOworICAgICAg
ICBmbGFncyA9IHAybV9hY2Nlc3NfdG9faW9tbXVfZmxhZ3MocDJtYSk7Cisg
ICAgICAgIGlmICggKGZsYWdzICYgSU9NTVVGX3dyaXRhYmxlKSAmJgorICAg
ICAgICAgICAgIHJhbmdlc2V0X2NvbnRhaW5zX3NpbmdsZXRvbihtbWlvX3Jv
X3JhbmdlcywgbWZuX3gobWZuKSkgKQorICAgICAgICAgICAgZmxhZ3MgJj0g
fklPTU1VRl93cml0YWJsZTsKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVs
dDoKICAgICAgICAgZmxhZ3MgPSAwOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfbWFwLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X21hcC5jCkBAIC03MTYsMjcgKzcxNiw0OSBAQCBpbnQgYW1kX2lvbW11
X3VubWFwX3BhZ2Uoc3RydWN0IGRvbWFpbiAqCiAgICAgcmV0dXJuIDA7CiB9
CiAKLWludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKHN0
cnVjdCBkb21haW4gKmRvbWFpbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHU2NCBwaHlzX2FkZHIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUs
IGludCBpdywgaW50IGlyKQoraW50IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFp
bl91bml0eV9tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBpdnJzX3Vu
aXR5X21hcCAqbWFwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IGZsYWcpCiB7Ci0gICAgdW5zaWduZWQg
bG9uZyBucGFnZXMsIGk7Ci0gICAgdW5zaWduZWQgbG9uZyBnZm47Ci0gICAg
dW5zaWduZWQgaW50IGZsYWdzID0gISFpcjsKLSAgICBpbnQgcnQgPSAwOwot
Ci0gICAgaWYgKCBpdyApCi0gICAgICAgIGZsYWdzIHw9IElPTU1VRl93cml0
YWJsZTsKLQotICAgIG5wYWdlcyA9IHJlZ2lvbl90b19wYWdlcyhwaHlzX2Fk
ZHIsIHNpemUpOwotICAgIGdmbiA9IHBoeXNfYWRkciA+PiBQQUdFX1NISUZU
OwotICAgIGZvciAoIGkgPSAwOyBpIDwgbnBhZ2VzOyBpKysgKQorICAgIGlu
dCByYzsKKworICAgIGlmICggZCA9PSBkb21faW8gKQorICAgICAgICByZXR1
cm4gMDsKKworICAgIGZvciAoIHJjID0gMDsgIXJjICYmIG1hcDsgbWFwID0g
bWFwLT5uZXh0ICkKICAgICB7Ci0gICAgICAgIHJ0ID0gYW1kX2lvbW11X21h
cF9wYWdlKGRvbWFpbiwgZ2ZuICtpLCBnZm4gK2ksIGZsYWdzKTsKLSAgICAg
ICAgaWYgKCBydCAhPSAwICkKLSAgICAgICAgICAgIHJldHVybiBydDsKKyAg
ICAgICAgcDJtX2FjY2Vzc190IHAybWEgPSBwMm1fYWNjZXNzX247CisKKyAg
ICAgICAgaWYgKCBtYXAtPnJlYWQgKQorICAgICAgICAgICAgcDJtYSB8PSBw
Mm1fYWNjZXNzX3I7CisgICAgICAgIGlmICggbWFwLT53cml0ZSApCisgICAg
ICAgICAgICBwMm1hIHw9IHAybV9hY2Nlc3NfdzsKKworICAgICAgICByYyA9
IGlvbW11X2lkZW50aXR5X21hcHBpbmcoZCwgcDJtYSwgbWFwLT5hZGRyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRy
ICsgbWFwLT5sZW5ndGggLSAxLCBmbGFnKTsKICAgICB9Ci0gICAgcmV0dXJu
IDA7CisKKyAgICByZXR1cm4gcmM7Cit9CisKK2ludCBhbWRfaW9tbXVfcmVz
ZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
c3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXApCit7CisgICAgaW50IHJjOwor
CisgICAgaWYgKCBkID09IGRvbV9pbyApCisgICAgICAgIHJldHVybiAwOwor
CisgICAgZm9yICggcmMgPSAwOyBtYXA7IG1hcCA9IG1hcC0+bmV4dCApCisg
ICAgeworICAgICAgICBpbnQgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGlu
ZyhkLCBwMm1fYWNjZXNzX3gsIG1hcC0+YWRkciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRyICsgbWFwLT5s
ZW5ndGggLSAxLCAwKTsKKworICAgICAgICBpZiAoIHJldCAmJiByZXQgIT0g
LUVOT0VOVCAmJiAhcmMgKQorICAgICAgICAgICAgcmMgPSByZXQ7CisgICAg
fQorCisgICAgcmV0dXJuIHJjOwogfQogCiAvKiBTaGFyZSBwMm0gdGFibGUg
d2l0aCBpb21tdS4gKi8KLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
YW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhy
b3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0zMzMsNiArMzMzLDcgQEAg
c3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3RydWN0IGRvbWFpbgogICAg
IHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwogICAgIGludCBiZGYsIHJjOwog
ICAgIHN0cnVjdCBkb21haW5faW9tbXUgKnQgPSBkb21faW9tbXUodGFyZ2V0
KTsKKyAgICBjb25zdCBzdHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBw
aW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHBkZXYtPnNlZyk7CiAKICAgICBi
ZGYgPSBQQ0lfQkRGMihwZGV2LT5idXMsIHBkZXYtPmRldmZuKTsKICAgICBp
b21tdSA9IGZpbmRfaW9tbXVfZm9yX2RldmljZShwZGV2LT5zZWcsIGJkZik7
CkBAIC0zNDcsMTAgKzM0OCwyNCBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2Rl
dmljZShzdHJ1Y3QgZG9tYWluCiAKICAgICBhbWRfaW9tbXVfZGlzYWJsZV9k
b21haW5fZGV2aWNlKHNvdXJjZSwgaW9tbXUsIGRldmZuLCBwZGV2KTsKIAot
ICAgIGlmICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4gKQorICAgIC8qCisgICAg
ICogSWYgdGhlIGRldmljZSBiZWxvbmdzIHRvIHRoZSBoYXJkd2FyZSBkb21h
aW4sIGFuZCBpdCBoYXMgYSB1bml0eSBtYXBwaW5nLAorICAgICAqIGRvbid0
IHJlbW92ZSBpdCBmcm9tIHRoZSBoYXJkd2FyZSBkb21haW4sIGJlY2F1c2Ug
QklPUyBtYXkgcmVmZXJlbmNlIHRoYXQKKyAgICAgKiBtYXBwaW5nLgorICAg
ICAqLworICAgIGlmICggIWlzX2hhcmR3YXJlX2RvbWFpbihzb3VyY2UpICkK
KyAgICB7CisgICAgICAgIHJjID0gYW1kX2lvbW11X3Jlc2VydmVfZG9tYWlu
X3VuaXR5X3VubWFwKAorICAgICAgICAgICAgICAgICBzb3VyY2UsCisgICAg
ICAgICAgICAgICAgIGl2cnNfbWFwcGluZ3NbZ2V0X2RtYV9yZXF1ZXN0b3Jf
aWQocGRldi0+c2VnLCBiZGYpXS51bml0eV9tYXApOworICAgICAgICBpZiAo
IHJjICkKKyAgICAgICAgICAgIHJldHVybiByYzsKKyAgICB9CisKKyAgICBp
ZiAoIGRldmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRvbWFpbiAhPSBk
b21faW8gKQogICAgIHsKLSAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21h
aW5fbGlzdCwgJnRhcmdldC0+YXJjaC5wZGV2X2xpc3QpOwotICAgICAgICBw
ZGV2LT5kb21haW4gPSB0YXJnZXQ7CisgICAgICAgIGxpc3RfbW92ZSgmcGRl
di0+ZG9tYWluX2xpc3QsICZkb21faW8tPmFyY2gucGRldl9saXN0KTsKKyAg
ICAgICAgcGRldi0+ZG9tYWluID0gZG9tX2lvOwogICAgIH0KIAogICAgIHJj
ID0gYWxsb2NhdGVfZG9tYWluX3Jlc291cmNlcyh0KTsKQEAgLTM2Miw2ICsz
NzcsMTIgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3RydWN0IGRv
bWFpbgogICAgICAgICAgICAgICAgICAgICBwZGV2LT5zZWcsIHBkZXYtPmJ1
cywgUENJX1NMT1QoZGV2Zm4pLCBQQ0lfRlVOQyhkZXZmbiksCiAgICAgICAg
ICAgICAgICAgICAgIHNvdXJjZS0+ZG9tYWluX2lkLCB0YXJnZXQtPmRvbWFp
bl9pZCk7CiAKKyAgICBpZiAoIGRldmZuID09IHBkZXYtPmRldmZuICYmIHBk
ZXYtPmRvbWFpbiAhPSB0YXJnZXQgKQorICAgIHsKKyAgICAgICAgbGlzdF9t
b3ZlKCZwZGV2LT5kb21haW5fbGlzdCwgJnRhcmdldC0+YXJjaC5wZGV2X2xp
c3QpOworICAgICAgICBwZGV2LT5kb21haW4gPSB0YXJnZXQ7CisgICAgfQor
CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTM3MiwyMCArMzkzLDI4IEBAIHN0
YXRpYyBpbnQgYW1kX2lvbW11X2Fzc2lnbl9kZXZpY2Uoc3RydWMKICAgICBz
dHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJz
X21hcHBpbmdzKHBkZXYtPnNlZyk7CiAgICAgaW50IGJkZiA9IFBDSV9CREYy
KHBkZXYtPmJ1cywgZGV2Zm4pOwogICAgIGludCByZXFfaWQgPSBnZXRfZG1h
X3JlcXVlc3Rvcl9pZChwZGV2LT5zZWcsIGJkZik7Ci0gICAgY29uc3Qgc3Ry
dWN0IGl2cnNfdW5pdHlfbWFwICp1bml0eV9tYXA7CisgICAgaW50IHJjID0g
YW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAgICAg
ICAgICAgICAgZCwgaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcCwg
ZmxhZyk7CisKKyAgICBpZiAoICFyYyApCisgICAgICAgIHJjID0gcmVhc3Np
Z25fZGV2aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2Zm4sIHBkZXYpOwogCi0g
ICAgZm9yICggdW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVu
aXR5X21hcDsgdW5pdHlfbWFwOwotICAgICAgICAgIHVuaXR5X21hcCA9IHVu
aXR5X21hcC0+bmV4dCApCisgICAgaWYgKCByYyAmJiAhaXNfaGFyZHdhcmVf
ZG9tYWluKGQpICkKICAgICB7Ci0gICAgICAgIGludCByYyA9IGFtZF9pb21t
dV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoCi0gICAgICAgICAgICAgICAg
ICAgICBkLCB1bml0eV9tYXAtPmFkZHIsIHVuaXR5X21hcC0+bGVuZ3RoLAot
ICAgICAgICAgICAgICAgICAgICAgdW5pdHlfbWFwLT53cml0ZSwgdW5pdHlf
bWFwLT5yZWFkKTsKKyAgICAgICAgaW50IHJldCA9IGFtZF9pb21tdV9yZXNl
cnZlX2RvbWFpbl91bml0eV91bm1hcCgKKyAgICAgICAgICAgICAgICAgICAg
ICBkLCBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwKTsKIAotICAg
ICAgICBpZiAoIHJjICkKLSAgICAgICAgICAgIHJldHVybiByYzsKKyAgICAg
ICAgaWYgKCByZXQgKQorICAgICAgICB7CisgICAgICAgICAgICBwcmludGso
WEVOTE9HX0VSUiAiQU1ELVZpOiAiCisgICAgICAgICAgICAgICAgICAgInVu
aXR5LXVubWFwIGZvciBkJWQvJTA0eDolMDJ4OiUwMnguJXUgZmFpbGVkICgl
ZClcbiIsCisgICAgICAgICAgICAgICAgICAgZC0+ZG9tYWluX2lkLCBwZGV2
LT5zZWcsIHBkZXYtPmJ1cywKKyAgICAgICAgICAgICAgICAgICBQQ0lfU0xP
VChkZXZmbiksIFBDSV9GVU5DKGRldmZuKSwgcmV0KTsKKyAgICAgICAgICAg
IGRvbWFpbl9jcmFzaChkKTsKKyAgICAgICAgfQogICAgIH0KIAotICAgIHJl
dHVybiByZWFzc2lnbl9kZXZpY2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwg
cGRldik7CisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgdm9pZCBkZWFs
bG9jYXRlX25leHRfcGFnZV90YWJsZShzdHJ1Y3QgcGFnZV9pbmZvICpwZywg
aW50IGxldmVsKQpAQCAtNDUxLDYgKzQ4MCw3IEBAIHN0YXRpYyB2b2lkIGRl
YWxsb2NhdGVfaW9tbXVfcGFnZV90YWJsZXMKIAogc3RhdGljIHZvaWQgYW1k
X2lvbW11X2RvbWFpbl9kZXN0cm95KHN0cnVjdCBkb21haW4gKmQpCiB7Cisg
ICAgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKGQpOwogICAgIGRlYWxs
b2NhdGVfaW9tbXVfcGFnZV90YWJsZXMoZCk7CiAgICAgYW1kX2lvbW11X2Zs
dXNoX2FsbF9wYWdlcyhkKTsKIH0KLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4
Ni9odm0vc3ZtL2FtZC1pb21tdS1wcm90by5oCisrKyBiL3hlbi9pbmNsdWRl
L2FzbS14ODYvaHZtL3N2bS9hbWQtaW9tbXUtcHJvdG8uaApAQCAtNjAsOCAr
NjAsMTAgQEAgaW50IF9fbXVzdF9jaGVjayBhbWRfaW9tbXVfdW5tYXBfcGFn
ZShzdAogdTY0IGFtZF9pb21tdV9nZXRfbmV4dF90YWJsZV9mcm9tX3B0ZSh1
MzIgKmVudHJ5KTsKIGludCBfX211c3RfY2hlY2sgYW1kX2lvbW11X2FsbG9j
X3Jvb3Qoc3RydWN0IGRvbWFpbl9pb21tdSAqaGQpOwogaW50IGFtZF9pb21t
dV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoc3RydWN0IGRvbWFpbiAqZG9t
YWluLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dTY0IHBoeXNfYWRkciwgdW5zaWduZWQgbG9uZyBzaXplLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGl3LCBpbnQgaXIp
OworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgc3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXAsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZyk7
CitpbnQgYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X3VubWFwKHN0
cnVjdCBkb21haW4gKmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqbWFw
KTsKIAogLyogU2hhcmUgcDJtIHRhYmxlIHdpdGggaW9tbXUgKi8KIHZvaWQg
YW1kX2lvbW11X3NoYXJlX3AybShzdHJ1Y3QgZG9tYWluICpkKTsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtOTks
MTIgKzk5LDggQEAgc3RhdGljIHN0cnVjdCBhbWRfaW9tbXUgKiBfX2luaXQg
ZmluZF9pbwogfQogCiBzdGF0aWMgaW50IF9faW5pdCByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZSgKLSAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21t
dSwgdWludDY0X3QgYmFzZSwgdWludDY0X3QgbGltaXQsCi0gICAgYm9vbCBh
bGwsIGJvb2wgaXcsIGJvb2wgaXIpCisgICAgc3RydWN0IGFtZF9pb21tdSAq
aW9tbXUsIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwgYm9vbCBhbGwp
CiB7Ci0gICAgaWYgKCAhaXIgfHwgIWl3ICkKLSAgICAgICAgcmV0dXJuIC1F
UEVSTTsKLQogICAgIC8qIG5lZWQgdG8gZXh0ZW5kIGV4Y2x1c2lvbiByYW5n
ZT8gKi8KICAgICBpZiAoIGlvbW11LT5leGNsdXNpb25fZW5hYmxlICkKICAg
ICB7CkBAIC0xMzMsMTQgKzEyOSwxOCBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZXNlcnZlX3VuaXR5X21hcF9mb3JfCiB7CiAgICAgc3RydWN0IGl2cnNfbWFw
cGluZ3MgKml2cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhzZWcp
OwogICAgIHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwID0gaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcDsKKyAgICBpbnQgcGFnaW5nX21v
ZGUgPSBhbWRfaW9tbXVfZ2V0X3BhZ2luZ19tb2RlKFBGTl9VUChiYXNlICsg
bGVuZ3RoKSk7CisKKyAgICBpZiAoIHBhZ2luZ19tb2RlIDwgMCApCisgICAg
ICAgIHJldHVybiBwYWdpbmdfbW9kZTsKIAogICAgIC8qIENoZWNrIGZvciBv
dmVybGFwcy4gKi8KICAgICBmb3IgKCA7IHVuaXR5X21hcDsgdW5pdHlfbWFw
ID0gdW5pdHlfbWFwLT5uZXh0ICkKICAgICB7CiAgICAgICAgIC8qCiAgICAg
ICAgICAqIEV4YWN0IG1hdGNoZXMgYXJlIG9rYXkuIFRoaXMgY2FuIGluIHBh
cnRpY3VsYXIgaGFwcGVuIHdoZW4KLSAgICAgICAgICogcmVnaXN0ZXJfZXhj
bHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3aWNlIGZv
ciB0aGUKLSAgICAgICAgICogc2FtZSAocyxiLGQsZikuCisgICAgICAgICAq
IHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3aWNl
IGZvciB0aGUgc2FtZQorICAgICAgICAgKiAocyxiLGQsZikuCiAgICAgICAg
ICAqLwogICAgICAgICBpZiAoIGJhc2UgPT0gdW5pdHlfbWFwLT5hZGRyICYm
IGxlbmd0aCA9PSB1bml0eV9tYXAtPmxlbmd0aCAmJgogICAgICAgICAgICAg
IGlyID09IHVuaXR5X21hcC0+cmVhZCAmJiBpdyA9PSB1bml0eV9tYXAtPndy
aXRlICkKQEAgLTE2OCw1NSArMTY4LDUyIEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl8KICAgICB1bml0eV9tYXAtPm5leHQg
PSBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwOwogICAgIGl2cnNfbWFw
cGluZ3NbYmRmXS51bml0eV9tYXAgPSB1bml0eV9tYXA7CiAKKyAgICBpZiAo
IHBhZ2luZ19tb2RlID4gYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSApCisg
ICAgICAgIGFtZF9pb21tdV9taW5fcGFnaW5nX21vZGUgPSBwYWdpbmdfbW9k
ZTsKKwogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2FsbF9kZXZpY2VzKAotICAg
IHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTgg
aXcsIHU4IGlyKQorc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfcmFuZ2Vf
Zm9yX2FsbF9kZXZpY2VzKAorICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBs
aW1pdCwgYm9vbCBpdywgYm9vbCBpciwgYm9vbCBleGNsdXNpb24pCiB7CiAg
ICAgaW50IHNlZyA9IDA7IC8qIFhYWCAqLwotICAgIHVuc2lnbmVkIGxvbmcg
cmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdTsKLSAgICB1bnNpZ25lZCBpbnQgYmRmOwogICAgIGlu
dCByYyA9IDA7CiAKICAgICAvKiBpcyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5n
ZSBpbnNpZGUgb2YgSU9NTVUgdmlydHVhbCBhZGRyZXNzIHNwYWNlPyAqLwog
ICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8g
YmUgcGFnZS1hbGlnbmVkICovCi0gICAgcmFuZ2VfdG9wID0gbGltaXQgKyBQ
QUdFX1NJWkU7Ci0gICAgaW9tbXVfdG9wID0gbWF4X3BhZ2UgKiBQQUdFX1NJ
WkU7Ci0gICAgaWYgKCBiYXNlIDwgaW9tbXVfdG9wICkKLSAgICB7Ci0gICAg
ICAgIGlmICggcmFuZ2VfdG9wID4gaW9tbXVfdG9wICkKLSAgICAgICAgICAg
IHJhbmdlX3RvcCA9IGlvbW11X3RvcDsKLSAgICAgICAgbGVuZ3RoID0gcmFu
Z2VfdG9wIC0gYmFzZTsKLSAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHkt
bWFwcGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAqLwotICAgICAgICAv
KiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNp
b24gcmFuZ2UgKi8KLSAgICAgICAgZm9yICggYmRmID0gMDsgIXJjICYmIGJk
ZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAgICAgICAgIHJj
ID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFz
ZSwgbGVuZ3RoLCBpdywgaXIpOwotICAgICAgICAvKiBwdXNoICdiYXNlJyBq
dXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCi0gICAg
ICAgIGJhc2UgPSBpb21tdV90b3A7Ci0gICAgfQotICAgIC8qIHJlZ2lzdGVy
IElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICgg
IXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCApCisgICAgaWYgKCBleGNsdXNp
b24gKQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBpb21t
dSApCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21t
dV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVl
IC8qIGFsbCAqLywgaXcsIGlyKTsKLSAgICAgICAgICAgIGlmICggcmMgKQot
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgaW50IHJldCA9
IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBs
aW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0cnVlIC8qIGFsbCAqLyk7CisKKyAgICAgICAgICAg
IGlmICggcmV0ICYmICFyYyApCisgICAgICAgICAgICAgICAgcmMgPSByZXQ7
CiAgICAgICAgIH0KICAgICB9CiAKKyAgICBpZiAoICFleGNsdXNpb24gfHwg
cmMgKQorICAgIHsKKyAgICAgICAgcGFkZHJfdCBsZW5ndGggPSBsaW1pdCAr
IFBBR0VfU0laRSAtIGJhc2U7CisgICAgICAgIHVuc2lnbmVkIGludCBiZGY7
CisKKyAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHktbWFwcGVkIHBhZ2Ug
ZW50cmllcyBmb3IgZGV2aWNlcyAqLworICAgICAgICBmb3IgKCBiZGYgPSBy
YyA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyAp
CisgICAgICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZp
Y2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsKKyAgICB9CisK
ICAgICByZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgX19pbml0IHJlZ2lz
dGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfZGV2aWNlKAotICAgIHUxNiBiZGYs
IHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTgg
aXcsIHU4IGlyKQorc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfcmFuZ2Vf
Zm9yX2RldmljZSgKKyAgICB1bnNpZ25lZCBpbnQgYmRmLCBwYWRkcl90IGJh
c2UsIHBhZGRyX3QgbGltaXQsCisgICAgYm9vbCBpdywgYm9vbCBpciwgYm9v
bCBleGNsdXNpb24pCiB7CiAgICAgaW50IHNlZyA9IDA7IC8qIFhYWCAqLwog
ICAgIHN0cnVjdCBpdnJzX21hcHBpbmdzICppdnJzX21hcHBpbmdzID0gZ2V0
X2l2cnNfbWFwcGluZ3Moc2VnKTsKLSAgICB1bnNpZ25lZCBsb25nIHJhbmdl
X3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAgc3RydWN0IGFtZF9pb21t
dSAqaW9tbXU7CiAgICAgdTE2IHJlcTsKICAgICBpbnQgcmMgPSAwOwpAQCAt
MjMwLDI3ICsyMjcsMTkgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJf
ZXhjbHVzaW9uX3JhbgogICAgIHJlcSA9IGl2cnNfbWFwcGluZ3NbYmRmXS5k
dGVfcmVxdWVzdG9yX2lkOwogCiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJh
bWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICBy
YW5nZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsKLSAgICBpb21tdV90b3Ag
PSBtYXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21t
dV90b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21t
dV90b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwot
ICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOworICAgIGlmICgg
ZXhjbHVzaW9uICkKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgLyogYWxsICov
KTsKKyAgICBpZiAoICFleGNsdXNpb24gfHwgcmMgKQorICAgIHsKKyAgICAg
ICAgcGFkZHJfdCBsZW5ndGggPSBsaW1pdCArIFBBR0VfU0laRSAtIGJhc2U7
CisKICAgICAgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2UgKi8KLSAgICAgICAgLyogbm90ZTogdGhlc2UgZW50
cmllcyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCiAgICAg
ICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJk
ZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpID86CiAgICAgICAgICAgICAgcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIHJlcSwgYmFzZSwgbGVu
Z3RoLCBpdywgaXIpOwotCi0gICAgICAgIC8qIHB1c2ggJ2Jhc2UnIGp1c3Qg
b3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKi8KLSAgICAgICAg
YmFzZSA9IGlvbW11X3RvcDsKICAgICB9Ci0KLSAgICAvKiByZWdpc3RlciBJ
T01NVSBleGNsdXNpb24gcmFuZ2Ugc2V0dGluZ3MgZm9yIGRldmljZSAqLwot
ICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCAgKQorICAgIGVs
c2UKICAgICB7Ci0gICAgICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlIC8qIGFsbCAqLywg
aXcsIGlyKTsKICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmR0ZV9hbGxv
d19leGNsdXNpb24gPSBJT01NVV9DT05UUk9MX0VOQUJMRUQ7CiAgICAgICAg
IGl2cnNfbWFwcGluZ3NbcmVxXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gSU9N
TVVfQ09OVFJPTF9FTkFCTEVEOwogICAgIH0KQEAgLTI1OCw1MyArMjQ3LDQy
IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4K
ICAgICByZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgX19pbml0IHJlZ2lz
dGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfaW9tbXVfZGV2aWNlcygKLSAgICBz
dHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25lZCBsb25nIGJh
c2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3LCB1OCBpcikKK3N0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21tdV9kZXZpY2Vz
KAorICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCBwYWRkcl90IGJhc2Us
IHBhZGRyX3QgbGltaXQsCisgICAgYm9vbCBpdywgYm9vbCBpciwgYm9vbCBl
eGNsdXNpb24pCiB7Ci0gICAgdW5zaWduZWQgbG9uZyByYW5nZV90b3AsIGlv
bW11X3RvcCwgbGVuZ3RoOworICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1l
dGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCisgICAgcGFk
ZHJfdCBsZW5ndGggPSBsaW1pdCArIFBBR0VfU0laRSAtIGJhc2U7CiAgICAg
dW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOwotICAgIGludCByYyA9
IDA7CisgICAgaW50IHJjOwogCi0gICAgLyogaXMgcGFydCBvZiBleGNsdXNp
b24gcmFuZ2UgaW5zaWRlIG9mIElPTU1VIHZpcnR1YWwgYWRkcmVzcyBzcGFj
ZT8gKi8KLSAgICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1
bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwotICAgIHJhbmdlX3RvcCA9IGxp
bWl0ICsgUEFHRV9TSVpFOwotICAgIGlvbW11X3RvcCA9IG1heF9wYWdlICog
UEFHRV9TSVpFOwotICAgIGlmICggYmFzZSA8IGlvbW11X3RvcCApCi0gICAg
ewotICAgICAgICBpZiAoIHJhbmdlX3RvcCA+IGlvbW11X3RvcCApCi0gICAg
ICAgICAgICByYW5nZV90b3AgPSBpb21tdV90b3A7Ci0gICAgICAgIGxlbmd0
aCA9IHJhbmdlX3RvcCAtIGJhc2U7Ci0gICAgICAgIC8qIHJlc2VydmUgci93
IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMgKi8KLSAg
ICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUg
ZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9IDA7ICFy
YyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGlmICggaW9tbXUgPT0gZmluZF9pb21tdV9mb3Jf
ZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIHJlcSA9IGdldF9pdnJzX21hcHBpbmdzKGlvbW11LT5z
ZWcpW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKLSAgICAgICAgICAgICAgICBy
YyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywg
YmRmLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcikgPzoKLSAgICAgICAg
ICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcik7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBwdXNoICdi
YXNlJyBqdXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICov
Ci0gICAgICAgIGJhc2UgPSBpb21tdV90b3A7CisgICAgaWYgKCBleGNsdXNp
b24gKQorICAgIHsKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsIHRydWUgLyogYWxsICov
KTsKKyAgICAgICAgaWYgKCAhcmMgKQorICAgICAgICAgICAgcmV0dXJuIDA7
CiAgICAgfQogCi0gICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJh
bmdlIHNldHRpbmdzICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9t
bXVfdG9wICkKLSAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lv
bl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3
LCBpcik7CisgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2VzICovCisgICAgZm9yICggYmRmID0gcmMgPSAwOyAh
cmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysgKQorICAgIHsK
KyAgICAgICAgaWYgKCBpb21tdSAhPSBmaW5kX2lvbW11X2Zvcl9kZXZpY2Uo
aW9tbXUtPnNlZywgYmRmKSApCisgICAgICAgICAgICBjb250aW51ZTsKKwor
ICAgICAgICByZXEgPSBnZXRfaXZyc19tYXBwaW5ncyhpb21tdS0+c2VnKVti
ZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7CisgICAgICAgIHJjID0gcmVzZXJ2ZV91
bml0eV9tYXBfZm9yX2RldmljZShpb21tdS0+c2VnLCBiZGYsIGJhc2UsIGxl
bmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGl3LCBpcikgPzoKKyAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21h
cF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcs
IGlyKTsKKyAgICB9CiAKICAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyBp
bnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdCgKICAgICBjb25z
dCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaywKLSAgICB1
bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3
LCB1OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGltaXQsIGJv
b2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAgIHUxNiBi
ZGY7CiAKQEAgLTMxNSwxMiArMjkzLDEyIEBAIHN0YXRpYyBpbnQgX19pbml0
IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGUKICAgICAgICAgcmV0dXJuIC1FTk9E
RVY7CiAgICAgfQogCi0gICAgcmV0dXJuIHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW5nZV9mb3JfZGV2aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpcik7Cisg
ICAgcmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2UoYmRmLCBiYXNl
LCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQogCiBzdGF0aWMgaW50
IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9yYW5nZSgKICAgICBjb25zdCBz
dHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaywKLSAgICB1bnNp
Z25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3LCB1
OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGltaXQsIGJvb2wg
aXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAgIHVuc2lnbmVk
IGludCBmaXJzdF9iZGYsIGxhc3RfYmRmLCBiZGY7CiAgICAgaW50IGVycm9y
OwpAQCAtMzQyLDE1ICszMjAsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcGFy
c2VfaXZtZF9kZXZpY2VfcmFuZwogICAgIH0KIAogICAgIGZvciAoIGJkZiA9
IGZpcnN0X2JkZiwgZXJyb3IgPSAwOyAoYmRmIDw9IGxhc3RfYmRmKSAmJiAh
ZXJyb3I7IGJkZisrICkKLSAgICAgICAgZXJyb3IgPSByZWdpc3Rlcl9leGNs
dXNpb25fcmFuZ2VfZm9yX2RldmljZSgKLSAgICAgICAgICAgIGJkZiwgYmFz
ZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIGVycm9yID0gcmVnaXN0ZXJf
cmFuZ2VfZm9yX2RldmljZSgKKyAgICAgICAgICAgIGJkZiwgYmFzZSwgbGlt
aXQsIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIHJldHVybiBlcnJvcjsK
IH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9kZXZpY2VfaW9t
bXUoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19tZW1vcnkgKml2bWRf
YmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25n
IGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJfdCBiYXNlLCBwYWRk
cl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikK
IHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCiAgICAgc3RydWN0IGFt
ZF9pb21tdSAqaW9tbXU7CkBAIC0zNjUsMTQgKzM0MywxNCBAQCBzdGF0aWMg
aW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9pb21tCiAgICAgICAgIHJl
dHVybiAtRU5PREVWOwogICAgIH0KIAotICAgIHJldHVybiByZWdpc3Rlcl9l
eGNsdXNpb25fcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCi0gICAgICAgIGlv
bW11LCBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICByZXR1cm4gcmVnaXN0
ZXJfcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCisgICAgICAgIGlvbW11LCBi
YXNlLCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQogCiBzdGF0aWMg
aW50IF9faW5pdCBwYXJzZV9pdm1kX2Jsb2NrKGNvbnN0IHN0cnVjdCBhY3Bp
X2l2cnNfbWVtb3J5ICppdm1kX2Jsb2NrKQogewogICAgIHVuc2lnbmVkIGxv
bmcgc3RhcnRfYWRkciwgbWVtX2xlbmd0aCwgYmFzZSwgbGltaXQ7Ci0gICAg
dTggaXcsIGlyOworICAgIGJvb2wgaXcgPSB0cnVlLCBpciA9IHRydWUsIGV4
Y2x1c2lvbiA9IGZhbHNlOwogCiAgICAgaWYgKCBpdm1kX2Jsb2NrLT5oZWFk
ZXIubGVuZ3RoIDwgc2l6ZW9mKCppdm1kX2Jsb2NrKSApCiAgICAgewpAQCAt
Mzg5LDEzICszNjcsMTEgQEAgc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZt
ZF9ibG9jayhjb25zdAogICAgICAgICAgICAgICAgICAgICBpdm1kX2Jsb2Nr
LT5oZWFkZXIudHlwZSwgc3RhcnRfYWRkciwgbWVtX2xlbmd0aCk7CiAKICAg
ICBpZiAoIGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElfSVZNRF9F
WENMVVNJT05fUkFOR0UgKQotICAgICAgICBpdyA9IGlyID0gSU9NTVVfQ09O
VFJPTF9FTkFCTEVEOworICAgICAgICBleGNsdXNpb24gPSB0cnVlOwogICAg
IGVsc2UgaWYgKCBpdm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lW
TURfVU5JVFkgKQogICAgIHsKLSAgICAgICAgaXcgPSBpdm1kX2Jsb2NrLT5o
ZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfUkVBRCA/Ci0gICAgICAgICAgICBJ
T01NVV9DT05UUk9MX0VOQUJMRUQgOiBJT01NVV9DT05UUk9MX0RJU0FCTEVE
OwotICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFD
UElfSVZNRF9XUklURSA/Ci0gICAgICAgICAgICBJT01NVV9DT05UUk9MX0VO
QUJMRUQgOiBJT01NVV9DT05UUk9MX0RJU0FCTEVEOworICAgICAgICBpdyA9
IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElfSVZNRF9SRUFEOwor
ICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElf
SVZNRF9XUklURTsKICAgICB9CiAgICAgZWxzZQogICAgIHsKQEAgLTQwNiwy
MCArMzgyLDIwIEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfYmxv
Y2soY29uc3QKICAgICBzd2l0Y2goIGl2bWRfYmxvY2stPmhlYWRlci50eXBl
ICkKICAgICB7CiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9NRU1PUllfQUxM
OgotICAgICAgICByZXR1cm4gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zv
cl9hbGxfZGV2aWNlcygKLSAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywg
aXIpOworICAgICAgICByZXR1cm4gcmVnaXN0ZXJfcmFuZ2VfZm9yX2FsbF9k
ZXZpY2VzKAorICAgICAgICAgICAgYmFzZSwgbGltaXQsIGl3LCBpciwgZXhj
bHVzaW9uKTsKIAogICAgIGNhc2UgQUNQSV9JVlJTX1RZUEVfTUVNT1JZX09O
RToKLSAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdChp
dm1kX2Jsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgICAgICByZXR1cm4g
cGFyc2VfaXZtZF9kZXZpY2Vfc2VsZWN0KGl2bWRfYmxvY2ssIGJhc2UsIGxp
bWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGNhc2UgQUNQSV9JVlJTX1RZ
UEVfTUVNT1JZX1JBTkdFOgotICAgICAgICByZXR1cm4gcGFyc2VfaXZtZF9k
ZXZpY2VfcmFuZ2UoaXZtZF9ibG9jaywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAg
ICAgICByZXR1cm4gcGFyc2VfaXZtZF9kZXZpY2VfcmFuZ2UoaXZtZF9ibG9j
aywgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBjYXNlIEFD
UElfSVZSU19UWVBFX01FTU9SWV9JT01NVToKLSAgICAgICAgcmV0dXJuIHBh
cnNlX2l2bWRfZGV2aWNlX2lvbW11KGl2bWRfYmxvY2ssCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1pdCwgaXcs
IGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX2lvbW11
KGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaXcsIGlyLCBleGNsdXNpb24pOwogCiAg
ICAgZGVmYXVsdDoKICAgICAgICAgQU1EX0lPTU1VX0RFQlVHKCJJVk1EIEVy
cm9yOiBJbnZhbGlkIEJsb2NrIFR5cGUhXG4iKTsKLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4v
ZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0y
MTgsNiArMjE4LDggQEAgc3RhdGljIGludCBfX211c3RfY2hlY2sgYWxsb2Nh
dGVfZG9tYWluXwogICAgIHJldHVybiByYzsKIH0KIAoraW50IF9fcmVhZF9t
b3N0bHkgYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSA9IDE7CisKIHN0YXRp
YyBpbnQgYW1kX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4gKmQp
CiB7CiAgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUo
ZCk7CkBAIC0yMjksMTEgKzIzMSwxMyBAQCBzdGF0aWMgaW50IGFtZF9pb21t
dV9kb21haW5faW5pdChzdHJ1Y3QKICAgICAgKiAtIEhWTSBjb3VsZCBpbiBw
cmluY2lwbGUgdXNlIDMgb3IgNCBkZXBlbmRpbmcgb24gaG93IG11Y2ggZ3Vl
c3QKICAgICAgKiAgIHBoeXNpY2FsIGFkZHJlc3Mgc3BhY2Ugd2UgZ2l2ZSBp
dCwgYnV0IHRoaXMgaXNuJ3Qga25vd24geWV0IHNvIHVzZSA0CiAgICAgICog
ICB1bmlsYXRlcmFsbHkuCisgICAgICogLSBVbml0eSBtYXBzIG1heSByZXF1
aXJlIGFuIGV2ZW4gaGlnaGVyIG51bWJlci4KICAgICAgKi8KLSAgICBoZC0+
YXJjaC5wYWdpbmdfbW9kZSA9IGFtZF9pb21tdV9nZXRfcGFnaW5nX21vZGUo
Ci0gICAgICAgIGlzX2h2bV9kb21haW4oZCkKLSAgICAgICAgPyAxdWwgPDwg
KERFRkFVTFRfRE9NQUlOX0FERFJFU1NfV0lEVEggLSBQQUdFX1NISUZUKQot
ICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91bmQoKSArIDEpOworICAgIGhk
LT5hcmNoLnBhZ2luZ19tb2RlID0gbWF4KGFtZF9pb21tdV9nZXRfcGFnaW5n
X21vZGUoCisgICAgICAgICAgICBpc19odm1fZG9tYWluKGQpCisgICAgICAg
ICAgICA/IDF1bCA8PCAoREVGQVVMVF9ET01BSU5fQUREUkVTU19XSURUSCAt
IFBBR0VfU0hJRlQpCisgICAgICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91
bmQoKSArIDEpLAorICAgICAgICBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2Rl
KTsKIAogICAgIHJldHVybiAwOwogfQotLS0gYS94ZW4vaW5jbHVkZS9hc20t
eDg2L2h2bS9zdm0vYW1kLWlvbW11LXByb3RvLmgKKysrIGIveGVuL2luY2x1
ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21tdS1wcm90by5oCkBAIC0xMjYs
NiArMTI2LDggQEAgZXh0ZXJuIHN0cnVjdCBocGV0X3NiZGYgewogICAgIH0g
aW5pdDsKIH0gaHBldF9zYmRmOwogCitleHRlcm4gaW50IGFtZF9pb21tdV9t
aW5fcGFnaW5nX21vZGU7CisKIGV4dGVybiB2b2lkICpzaGFyZWRfaW50cmVt
YXBfdGFibGU7CiBleHRlcm4gdW5zaWduZWQgbG9uZyAqc2hhcmVkX2ludHJl
bWFwX2ludXNlOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtNzM2LDcgKzcz
Niw3IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRl
cik7IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2Vu
dHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5V
TEwpOwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFw
Mm1faXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAg
ICAgICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3No
YXJlZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4o
bWZuK2ksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAgfQogICAgIH0K
QEAgLTg0OCwxMyArODQ4LDEzIEBAIGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5
KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAgICAgICAgICAg
IEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAgICB9Ci0gICAg
ICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNfZm9yZWlnbihv
dCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90KSApCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRuJ3QgYmUgdW5t
YXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAqLworICAgICAg
ICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWdu
IHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwog
ICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAgICAgICAgCi0g
ICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAgICAgIHJldHVy
biAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoIHAybV9p
c19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAgICAgICAgewpA
QCAtOTQ3LDggKzk0Nyw3IEBAIGludCBwMm1fY2hhbmdlX3R5cGVfb25lKHN0
cnVjdCBkb21haW4gKmQKICAgICBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtID0g
cDJtX2dldF9ob3N0cDJtKGQpOwogICAgIGludCByYzsKIAotICAgIEJVR19P
TihwMm1faXNfZ3JhbnQob3QpIHx8IHAybV9pc19ncmFudChudCkpOwotICAg
IEJVR19PTihwMm1faXNfZm9yZWlnbihvdCkgfHwgcDJtX2lzX2ZvcmVpZ24o
bnQpKTsKKyAgICBCVUdfT04ocDJtX2lzX3NwZWNpYWwob3QpIHx8IHAybV9p
c19zcGVjaWFsKG50KSk7CiAKICAgICBnZm5fbG9jayhwMm0sIGdmbiwgMCk7
CiAKQEAgLTEwOTEsMTEgKzEwOTAsMTEgQEAgc3RhdGljIGludCBzZXRfdHlw
ZWRfcDJtX2VudHJ5KHN0cnVjdCBkbwogICAgICAgICBnZm5fdW5sb2NrKHAy
bSwgZ2ZuLCBvcmRlcik7CiAgICAgICAgIHJldHVybiBjdXJfb3JkZXIgKyAx
OwogICAgIH0KLSAgICBpZiAoIHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lz
X2ZvcmVpZ24ob3QpICkKKyAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90KSAp
CiAgICAgewogICAgICAgICBnZm5fdW5sb2NrKHAybSwgZ2ZuLCBvcmRlcik7
CiAgICAgICAgIGRvbWFpbl9jcmFzaChkKTsKLSAgICAgICAgcmV0dXJuIC1F
Tk9FTlQ7CisgICAgICAgIHJldHVybiAtRVBFUk07CiAgICAgfQogICAgIGVs
c2UgaWYgKCBwMm1faXNfcmFtKG90KSApCiAgICAgewotLS0gYS94ZW4vaW5j
bHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYv
cDJtLmgKQEAgLTE0Miw2ICsxNDIsMTAgQEAgdHlwZWRlZiB1bnNpZ25lZCBp
bnQgcDJtX3F1ZXJ5X3Q7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCBwMm1fdG9fbWFzayhwMm1fcmFtX2xvZ2RpcnR5KSApCiAjZGVmaW5lIFAy
TV9TSEFSRURfVFlQRVMgICAocDJtX3RvX21hc2socDJtX3JhbV9zaGFyZWQp
KQogCisvKiBUeXBlcyBlc3RhYmxpc2hlZC9jbGVhbmVkIHVwIHZpYSBzcGVj
aWFsIGFjY2Vzc29ycy4gKi8KKyNkZWZpbmUgUDJNX1NQRUNJQUxfVFlQRVMg
KFAyTV9HUkFOVF9UWVBFUyB8IFwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHAybV90b19tYXNrKHAybV9tYXBfZm9yZWlnbikpCisKIC8qIFZhbGlk
IHR5cGVzIG5vdCBuZWNlc3NhcmlseSBhc3NvY2lhdGVkIHdpdGggYSAodmFs
aWQpIE1GTi4gKi8KICNkZWZpbmUgUDJNX0lOVkFMSURfTUZOX1RZUEVTIChQ
Mk1fUE9EX1RZUEVTICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgcDJtX3RvX21hc2socDJtX21taW9fZGly
ZWN0KSBcCkBAIC0xNzAsNiArMTc0LDcgQEAgdHlwZWRlZiB1bnNpZ25lZCBp
bnQgcDJtX3F1ZXJ5X3Q7CiAjZGVmaW5lIHAybV9pc19wYWdlZChfdCkgICAg
KHAybV90b19tYXNrKF90KSAmIFAyTV9QQUdFRF9UWVBFUykKICNkZWZpbmUg
cDJtX2lzX3NoYXJhYmxlKF90KSAocDJtX3RvX21hc2soX3QpICYgUDJNX1NI
QVJBQkxFX1RZUEVTKQogI2RlZmluZSBwMm1faXNfc2hhcmVkKF90KSAgIChw
Mm1fdG9fbWFzayhfdCkgJiBQMk1fU0hBUkVEX1RZUEVTKQorI2RlZmluZSBw
Mm1faXNfc3BlY2lhbChfdCkgIChwMm1fdG9fbWFzayhfdCkgJiBQMk1fU1BF
Q0lBTF9UWVBFUykKICNkZWZpbmUgcDJtX2lzX2Jyb2tlbihfdCkgICAocDJt
X3RvX21hc2soX3QpICYgUDJNX0JST0tFTl9UWVBFUykKICNkZWZpbmUgcDJt
X2lzX2ZvcmVpZ24oX3QpICAocDJtX3RvX21hc2soX3QpICYgcDJtX3RvX21h
c2socDJtX21hcF9mb3JlaWduKSkKIAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.11-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.11-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tLmMK
KysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ3ODMsNyArNDc4Myw5IEBA
IGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogCiAgICAgLyogUmVt
b3ZlIHByZXZpb3VzbHkgbWFwcGVkIHBhZ2UgaWYgaXQgd2FzIHByZXNlbnQu
ICovCiAgICAgcHJldl9tZm4gPSBtZm5feChnZXRfZ2ZuKGQsIGdmbl94KGdw
Zm4pLCAmcDJtdCkpOwotICAgIGlmICggbWZuX3ZhbGlkKF9tZm4ocHJldl9t
Zm4pKSApCisgICAgaWYgKCBwMm10ID09IHAybV9tbWlvX2RpcmVjdCApCisg
ICAgICAgIHJjID0gLUVQRVJNOworICAgIGVsc2UgaWYgKCBtZm5fdmFsaWQo
X21mbihwcmV2X21mbikpICkKICAgICB7CiAgICAgICAgIGlmICggaXNfeGVu
X2hlYXBfbWZuKHByZXZfbWZuKSApCiAgICAgICAgICAgICAvKiBYZW4gaGVh
cCBmcmFtZXMgYXJlIHNpbXBseSB1bmhvb2tlZCBmcm9tIHRoaXMgcGh5cyBz
bG90LiAqLwotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVu
L2FyY2gveDg2L21tL3AybS5jCkBAIC03MjUsNyArNzI1LDggQEAgcDJtX3Jl
bW92ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY3VyX29yZGVyLCBO
VUxMKTsKIAogICAgICAgICBpZiAoIHAybV9pc192YWxpZCh0KSAmJgotICAg
ICAgICAgICAgICghbWZuX3ZhbGlkKF9tZm4obWZuKSkgfHwgbWZuICsgaSAh
PSBtZm5feChtZm5fcmV0dXJuKSkgKQorICAgICAgICAgICAgICghbWZuX3Zh
bGlkKF9tZm4obWZuKSkgfHwgdCA9PSBwMm1fbW1pb19kaXJlY3QgfHwKKyAg
ICAgICAgICAgICAgbWZuICsgaSAhPSBtZm5feChtZm5fcmV0dXJuKSkgKQog
ICAgICAgICAgICAgcmV0dXJuIC1FSUxTRVE7CiAKICAgICAgICAgaSArPSAo
MVVMIDw8IGN1cl9vcmRlcikgLSAoKGdmbl9sICsgaSkgJiAoKDFVTCA8PCBj
dXJfb3JkZXIpIC0gMSkpOwpAQCAtODAzLDcgKzgwNCw3IEBAIGd1ZXN0X3Bo
eXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICBpZiAoIHAy
bV9pc19mb3JlaWduKHQpICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAK
LSAgICBpZiAoICFtZm5fdmFsaWQobWZuKSApCisgICAgaWYgKCAhbWZuX3Zh
bGlkKG1mbikgfHwgdCA9PSBwMm1fbW1pb19kaXJlY3QgKQogICAgIHsKICAg
ICAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7CiAgICAgICAgIHJldHVybiAt
RUlOVkFMOwpAQCAtODUwLDcgKzg1MSw3IEBAIGd1ZXN0X3BoeXNtYXBfYWRk
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgfQogICAgICAgICBp
ZiAoIHAybV9pc19zcGVjaWFsKG90KSApCiAgICAgICAgIHsKLSAgICAgICAg
ICAgIC8qIERvbid0IHBlcm1pdCB1bm1hcHBpbmcgZ3JhbnQvZm9yZWlnbiB0
aGlzIHdheS4gKi8KKyAgICAgICAgICAgIC8qIERvbid0IHBlcm1pdCB1bm1h
cHBpbmcgZ3JhbnQvZm9yZWlnbi9kaXJlY3QtTU1JTyB0aGlzIHdheS4gKi8K
ICAgICAgICAgICAgIGRvbWFpbl9jcmFzaChkKTsKICAgICAgICAgICAgIHAy
bV91bmxvY2socDJtKTsKICAgICAgICAgICAgIApAQCAtMTE5Miw4ICsxMTkz
LDggQEAgaW50IHNldF9pZGVudGl0eV9wMm1fZW50cnkoc3RydWN0IGRvbWFp
bgogICogICAgb3JkZXIrMSAgZm9yIGNhbGxlciB0byByZXRyeSB3aXRoIG9y
ZGVyIChndWFyYW50ZWVkIHNtYWxsZXIgdGhhbgogICogICAgICAgICAgICAg
dGhlIG9yZGVyIHZhbHVlIHBhc3NlZCBpbikKICAqLwotaW50IGNsZWFyX21t
aW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcg
Z2ZuX2wsIG1mbl90IG1mbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgb3JkZXIpCitzdGF0aWMgaW50IGNsZWFyX21taW9fcDJt
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuX2ws
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IG1mbiwg
dW5zaWduZWQgaW50IG9yZGVyKQogewogICAgIGludCByYyA9IC1FSU5WQUw7
CiAgICAgZ2ZuX3QgZ2ZuID0gX2dmbihnZm5fbCk7Ci0tLSBhL3hlbi9hcmNo
L3g4Ni9tbS9wMm0tcG9kLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS1w
b2QuYwpAQCAtMTMwMiwxNyArMTMwMiwxNyBAQCBndWVzdF9waHlzbWFwX21h
cmtfcG9wdWxhdGVfb25fZGVtYW5kKHN0CiAKICAgICAgICAgcDJtLT5nZXRf
ZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZvdCwgJmEsIDAsICZjdXJf
b3JkZXIsIE5VTEwpOwogICAgICAgICBuID0gMVVMIDw8IG1pbihvcmRlciwg
Y3VyX29yZGVyKTsKLSAgICAgICAgaWYgKCBwMm1faXNfcmFtKG90KSApCisg
ICAgICAgIGlmICggb3QgPT0gcDJtX3BvcHVsYXRlX29uX2RlbWFuZCApCisg
ICAgICAgIHsKKyAgICAgICAgICAgIC8qIENvdW50IGhvdyBtYW55IFBvRCBl
bnRyaWVzIHdlJ2xsIGJlIHJlcGxhY2luZyBpZiBzdWNjZXNzZnVsICovCisg
ICAgICAgICAgICBwb2RfY291bnQgKz0gbjsKKyAgICAgICAgfQorICAgICAg
ICBlbHNlIGlmICggb3QgIT0gcDJtX2ludmFsaWQgJiYgb3QgIT0gcDJtX21t
aW9fZG0gKQogICAgICAgICB7CiAgICAgICAgICAgICBQMk1fREVCVUcoImdm
bl90b19tZm4gcmV0dXJuZWQgdHlwZSAlZCFcbiIsIG90KTsKICAgICAgICAg
ICAgIHJjID0gLUVCVVNZOwogICAgICAgICAgICAgZ290byBvdXQ7CiAgICAg
ICAgIH0KLSAgICAgICAgZWxzZSBpZiAoIG90ID09IHAybV9wb3B1bGF0ZV9v
bl9kZW1hbmQgKQotICAgICAgICB7Ci0gICAgICAgICAgICAvKiBDb3VudCBo
b3cgbWFuIFBvRCBlbnRyaWVzIHdlJ2xsIGJlIHJlcGxhY2luZyBpZiBzdWNj
ZXNzZnVsICovCi0gICAgICAgICAgICBwb2RfY291bnQgKz0gbjsKLSAgICAg
ICAgfQogICAgIH0KIAogICAgIC8qIE5vdywgYWN0dWFsbHkgZG8gdGhlIHR3
by13YXkgbWFwcGluZyAqLwotLS0gYS94ZW4vY29tbW9uL21lbW9yeS5jCisr
KyBiL3hlbi9jb21tb24vbWVtb3J5LmMKQEAgLTMzNSw3ICszMzUsNyBAQCBp
bnQgZ3Vlc3RfcmVtb3ZlX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwKICAgICB9
CiAgICAgaWYgKCBwMm10ID09IHAybV9tbWlvX2RpcmVjdCApCiAgICAgewot
ICAgICAgICByYyA9IGNsZWFyX21taW9fcDJtX2VudHJ5KGQsIGdtZm4sIG1m
biwgUEFHRV9PUkRFUl80Syk7CisgICAgICAgIHJjID0gLUVQRVJNOwogICAg
ICAgICBnb3RvIG91dF9wdXRfZ2ZuOwogICAgIH0KICNlbHNlCkBAIC0xNjUx
LDYgKzE2NTEsMTUgQEAgaW50IHByZXBhcmVfcmluZ19mb3JfaGVscGVyKAog
ICAgICAgICByZXR1cm4gLUVOT0VOVDsKICAgICB9CiAjZW5kaWYKKyNpZmRl
ZiBDT05GSUdfWDg2CisgICAgaWYgKCBwMm10ID09IHAybV9tbWlvX2RpcmVj
dCApCisgICAgeworICAgICAgICBpZiAoIHBhZ2UgKQorICAgICAgICAgICAg
cHV0X3BhZ2UocGFnZSk7CisKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKKyAg
ICB9CisjZW5kaWYKIAogICAgIGlmICggIXBhZ2UgKQogICAgICAgICByZXR1
cm4gLUVJTlZBTDsKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaAor
KysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCkBAIC0xNDQsNyArMTQ0
LDggQEAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgcDJtX3F1ZXJ5X3Q7CiAKIC8q
IFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQgdXAgdmlhIHNwZWNpYWwgYWNj
ZXNzb3JzLiAqLwogI2RlZmluZSBQMk1fU1BFQ0lBTF9UWVBFUyAoUDJNX0dS
QU5UX1RZUEVTIHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJt
X3RvX21hc2socDJtX21hcF9mb3JlaWduKSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHAybV90b19tYXNrKHAybV9tYXBfZm9yZWlnbikgfCBcCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fdG9fbWFzayhwMm1fbW1p
b19kaXJlY3QpKQogCiAvKiBWYWxpZCB0eXBlcyBub3QgbmVjZXNzYXJpbHkg
YXNzb2NpYXRlZCB3aXRoIGEgKHZhbGlkKSBNRk4uICovCiAjZGVmaW5lIFAy
TV9JTlZBTElEX01GTl9UWVBFUyAoUDJNX1BPRF9UWVBFUyAgICAgICAgICAg
ICAgICAgIFwKQEAgLTYyOSw4ICs2MzAsNiBAQCBpbnQgc2V0X2ZvcmVpZ25f
cDJtX2VudHJ5KHN0cnVjdCBkb21haW4KIC8qIFNldCBtbWlvIGFkZHJlc3Nl
cyBpbiB0aGUgcDJtIHRhYmxlIChmb3IgcGFzcy10aHJvdWdoKSAqLwogaW50
IHNldF9tbWlvX3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25l
ZCBsb25nIGdmbiwgbWZuX3QgbWZuLAogICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBpbnQgb3JkZXIsIHAybV9hY2Nlc3NfdCBhY2Nlc3MpOwot
aW50IGNsZWFyX21taW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVu
c2lnbmVkIGxvbmcgZ2ZuLCBtZm5fdCBtZm4sCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVyKTsKIAogLyogU2V0IGlkZW50
aXR5IGFkZHJlc3NlcyBpbiB0aGUgcDJtIHRhYmxlIChmb3IgcGFzcy10aHJv
dWdoKSAqLwogaW50IHNldF9pZGVudGl0eV9wMm1fZW50cnkoc3RydWN0IGRv
bWFpbiAqZCwgdW5zaWduZWQgbG9uZyBnZm4sCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-0a.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-0a.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBmaXggUG9EIGFjY291bnRpbmcgaW4gZ3Vlc3RfcGh5c21h
cF9hZGRfZW50cnkoKQoKVGhlIGluaXRpYWwgb2JzZXJ2YXRpb24gd2FzIHRo
YXQgdGhlIG1mbl92YWxpZCgpIGNoZWNrIGNvbWVzIHRvbyBsYXRlOgpOZWl0
aGVyIG1mbl9hZGQoKSBub3IgbWZuX3RvX3BhZ2UoKSAobGV0IGFsb25lIGRl
LXJlZmVyZW5jaW5nIHRoZQpyZXN1bHQgb2YgdGhlIGxhdHRlcikgYXJlIHZh
bGlkIGZvciBNRk5zIGZhaWxpbmcgdGhpcyBjaGVjay4gTW92ZSBpdCB1cAph
bmQgLSBub3RpY2luZyB0aGF0IHRoZXJlJ3Mgbm8gY2FsbGVyIGRvaW5nIHNv
IC0gYWxzbyBhZGQgYW4gYXNzZXJ0aW9uCnRoYXQgdGhpcyBzaG91bGQgbmV2
ZXIgcHJvZHVjZSAiZmFsc2UiIGhlcmUuCgpJbiB0dXJuIHRoaXMgd291bGQg
aGF2ZSBtZWFudCB0aGF0IHRoZSAiZWxzZSIgdG8gdGhhdCBpZigpIGNvdWxk
IG5vdyBnbwphd2F5LCB3aGljaCBkaWRuJ3Qgc2VlbSByaWdodCBhdCBhbGwu
IEFuZCBpbmRlZWQsIGNvbnNpZGVyaW5nIGNhbGxlcnMKbGlrZSBtZW1vcnlf
ZXhjaGFuZ2UoKSBvciB2YXJpb3VzIGdyYW50IHRhYmxlIGZ1bmN0aW9ucywg
dGhlIFBvRAphY2NvdW50aW5nIHNob3VsZCBoYXZlIGJlZW4gb3V0c2lkZSBv
ZiB0aGF0IGlmKCkgZnJvbSB0aGUgdmVyeQpiZWdpbm5pbmcuCgpTaWduZWQt
b2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkFja2Vk
LWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29t
PgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jCisrKyBiL3hlbi9hcmNo
L3g4Ni9tbS9wMm0uYwpAQCAtODY0LDYgKzg2NCwxMiBAQCBndWVzdF9waHlz
bWFwX2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgaWYgKCBwMm1f
aXNfZm9yZWlnbih0KSApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCisg
ICAgaWYgKCAhbWZuX3ZhbGlkKG1mbikgKQorICAgIHsKKyAgICAgICAgQVNT
RVJUX1VOUkVBQ0hBQkxFKCk7CisgICAgICAgIHJldHVybiAtRUlOVkFMOwor
ICAgIH0KKwogICAgIHAybV9sb2NrKHAybSk7CiAKICAgICBQMk1fREVCVUco
ImFkZGluZyBnZm49JSNseCBtZm49JSNseFxuIiwgZ2ZuX3goZ2ZuKSwgbWZu
X3gobWZuKSk7CkBAIC05NjMsMTIgKzk2OSwxNSBAQCBndWVzdF9waHlzbWFw
X2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgfQogCiAgICAgLyog
Tm93LCBhY3R1YWxseSBkbyB0aGUgdHdvLXdheSBtYXBwaW5nICovCi0gICAg
aWYgKCBtZm5fdmFsaWQobWZuKSApCisgICAgcmMgPSBwMm1fc2V0X2VudHJ5
KHAybSwgZ2ZuLCBtZm4sIHBhZ2Vfb3JkZXIsIHQsIHAybS0+ZGVmYXVsdF9h
Y2Nlc3MpOworICAgIGlmICggcmMgPT0gMCApCiAgICAgewotICAgICAgICBy
YyA9IHAybV9zZXRfZW50cnkocDJtLCBnZm4sIG1mbiwgcGFnZV9vcmRlciwg
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybS0+ZGVmYXVsdF9h
Y2Nlc3MpOwotICAgICAgICBpZiAoIHJjICkKLSAgICAgICAgICAgIGdvdG8g
b3V0OyAvKiBGYWlsZWQgdG8gdXBkYXRlIHAybSwgYmFpbCB3aXRob3V0IHVw
ZGF0aW5nIG0ycC4gKi8KKyNpZmRlZiBDT05GSUdfSFZNCisgICAgICAgIHBv
ZF9sb2NrKHAybSk7CisgICAgICAgIHAybS0+cG9kLmVudHJ5X2NvdW50IC09
IHBvZF9jb3VudDsKKyAgICAgICAgQlVHX09OKHAybS0+cG9kLmVudHJ5X2Nv
dW50IDwgMCk7CisgICAgICAgIHBvZF91bmxvY2socDJtKTsKKyNlbmRpZgog
CiAgICAgICAgIGlmICggIXAybV9pc19ncmFudCh0KSApCiAgICAgICAgIHsK
QEAgLTk3NywyNCArOTg2LDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnko
c3RydWN0IGRvbWFpbiAqZAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGdmbl94KGdmbl9hZGQoZ2ZuLCBpKSkpOwogICAgICAgICB9CiAg
ICAgfQotICAgIGVsc2UKLSAgICB7Ci0gICAgICAgIGdkcHJpbnRrKFhFTkxP
R19XQVJOSU5HLCAiQWRkaW5nIGJhZCBtZm4gdG8gcDJtIG1hcCAoJSNseCAt
PiAlI2x4KVxuIiwKLSAgICAgICAgICAgICAgICAgZ2ZuX3goZ2ZuKSwgbWZu
X3gobWZuKSk7Ci0gICAgICAgIHJjID0gcDJtX3NldF9lbnRyeShwMm0sIGdm
biwgSU5WQUxJRF9NRk4sIHBhZ2Vfb3JkZXIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICBwMm1faW52YWxpZCwgcDJtLT5kZWZhdWx0X2FjY2Vzcyk7
Ci0jaWZkZWYgQ09ORklHX0hWTQotICAgICAgICBpZiAoIHJjID09IDAgKQot
ICAgICAgICB7Ci0gICAgICAgICAgICBwb2RfbG9jayhwMm0pOwotICAgICAg
ICAgICAgcDJtLT5wb2QuZW50cnlfY291bnQgLT0gcG9kX2NvdW50OwotICAg
ICAgICAgICAgQlVHX09OKHAybS0+cG9kLmVudHJ5X2NvdW50IDwgMCk7Ci0g
ICAgICAgICAgICBwb2RfdW5sb2NrKHAybSk7Ci0gICAgICAgIH0KLSNlbmRp
ZgotICAgIH0KIAotb3V0OgogICAgIHAybV91bmxvY2socDJtKTsKIAogICAg
IHJldHVybiByYzsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-0b.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-0b.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBpZ25vcmUgcDJtX3JlbW92ZV9wYWdlKCkncyBy
ZXR1cm4gdmFsdWUKCkl0J3Mgbm90IHZlcnkgbmljZSB0byByZXR1cm4gZnJv
bSBndWVzdF9waHlzbWFwX2FkZF9lbnRyeSgpIGFmdGVyCnBlcmhhcHMgYWxy
ZWFkeSBoYXZpbmcgbWFkZSBzb21lIGNoYW5nZXMgdG8gdGhlIFAyTSwgYnV0
IHRoaXMgaXMgcHJlLQpleGlzdGluZyBwcmFjdGljZSBpbiB0aGUgZnVuY3Rp
b24sIGFuZCBpbW8gYmV0dGVyIHRoYW4gaWdub3JpbmcgZXJyb3JzLgoKVGFr
ZSB0aGUgbGliZXJ0eSBhbmQgcmVwbGFjZSBhbiBtZm5fYWRkKCkgaW5zdGFu
Y2Ugd2l0aCBhIGxvY2FsIHZhcmlhYmxlCmFscmVhZHkgaG9sZGluZyB0aGUg
cmVzdWx0IChhcyBwcm92ZW4gYnkgdGhlIGNoZWNrIGltbWVkaWF0ZWx5IGFo
ZWFkKS4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBz
dXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVycmFudCA8cGF1bC5kdXJy
YW50QGNpdHJpeC5jb20+CkFja2VkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRy
ZXcuY29vcGVyM0BjaXRyaXguY29tPgoKLS0tIGEveGVuL2FyY2gveDg2L21t
L3AybS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtNzcyLDgg
Kzc3Miw3IEBAIHZvaWQgcDJtX2ZpbmFsX3RlYXJkb3duKHN0cnVjdCBkb21h
aW4gKmQKICAgICBwMm1fdGVhcmRvd25faG9zdHAybShkKTsKIH0KIAotCi1z
dGF0aWMgaW50CitzdGF0aWMgaW50IF9fbXVzdF9jaGVjawogcDJtX3JlbW92
ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIHVuc2lnbmVkIGxvbmcg
Z2ZuX2wsIHVuc2lnbmVkIGxvbmcgbWZuLAogICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGludCBwYWdlX29yZGVyKQogewpAQCAtOTYxLDkgKzk2MCw5IEBA
IGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAg
ICAgICAgICAgICAgICBBU1NFUlQobWZuX3ZhbGlkKG9tZm4pKTsKICAgICAg
ICAgICAgICAgICBQMk1fREVCVUcoIm9sZCBnZm49JSNseCAtPiBtZm4gJSNs
eFxuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3gob2dmbikg
LCBtZm5feChvbWZuKSk7Ci0gICAgICAgICAgICAgICAgaWYgKCBtZm5fZXEo
b21mbiwgbWZuX2FkZChtZm4sIGkpKSApCi0gICAgICAgICAgICAgICAgICAg
IHAybV9yZW1vdmVfcGFnZShwMm0sIGdmbl94KG9nZm4pLCBtZm5feChtZm5f
YWRkKG1mbiwgaSkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMCk7CisgICAgICAgICAgICAgICAgaWYgKCBtZm5fZXEob21mbiwg
bWZuX2FkZChtZm4sIGkpKSAmJgorICAgICAgICAgICAgICAgICAgICAgKHJj
ID0gcDJtX3JlbW92ZV9wYWdlKHAybSwgZ2ZuX3gob2dmbiksIG1mbl94KG9t
Zm4pLCAwKSkgKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTk4Nyw2ICs5ODYs
NyBAQCBndWVzdF9waHlzbWFwX2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpk
CiAgICAgICAgIH0KICAgICB9CiAKKyBvdXQ6CiAgICAgcDJtX3VubG9jayhw
Mm0pOwogCiAgICAgcmV0dXJuIHJjOwpAQCAtMjY0Niw5ICsyNjQ2LDkgQEAg
aW50IHAybV9jaGFuZ2VfYWx0cDJtX2dmbihzdHJ1Y3QgZG9tYWluCiAKICAg
ICBpZiAoIGdmbl9lcShuZXdfZ2ZuLCBJTlZBTElEX0dGTikgKQogICAgIHsK
LSAgICAgICAgaWYgKCBtZm5fdmFsaWQobWZuKSApCi0gICAgICAgICAgICBw
Mm1fcmVtb3ZlX3BhZ2UoYXAybSwgZ2ZuX3gob2xkX2dmbiksIG1mbl94KG1m
biksIFBBR0VfT1JERVJfNEspOwotICAgICAgICByYyA9IDA7CisgICAgICAg
IHJjID0gbWZuX3ZhbGlkKG1mbikKKyAgICAgICAgICAgICA/IHAybV9yZW1v
dmVfcGFnZShhcDJtLCBnZm5feChvbGRfZ2ZuKSwgbWZuX3gobWZuKSwgUEFH
RV9PUkRFUl80SykKKyAgICAgICAgICAgICA6IDA7CiAgICAgICAgIGdvdG8g
b3V0OwogICAgIH0KIAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-0c.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-0c.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBhc3NlcnQgdGhhdCB0aGUgcGFzc2VkIGluIE1G
TiBtYXRjaGVzIGZvciBhIHJlbW92ZQoKZ3Vlc3RfcGh5c21hcF9yZW1vdmVf
cGFnZSgpIGdldHMgaGFuZGVkIGFuIE1GTiBmcm9tIHRoZSBvdXRzaWRlLCB5
ZXQKdGFrZXMgdGhlIG5lY2Vzc2FyeSBsb2NrIHRvIHByZXZlbnQgZnVydGhl
ciBjaGFuZ2VzIHRvIHRoZSBHRk4gPC0+IE1GTgptYXBwaW5nIGl0c2VsZi4g
V2hpbGUgc29tZSBjYWxsZXJzLCBpbiBwYXJ0aWN1bGFyIGd1ZXN0X3JlbW92
ZV9wYWdlKCkKKGJ5IHdheSBvZiBoYXZpbmcgY2FsbGVkIGdldF9nZm5fcXVl
cnkoKSksIGhvbGQgdGhlIEdGTiBsb2NrIGFscmVhZHksCnZhcmlvdXMgb3Ro
ZXJzIChtb3N0IG5vdGFibHkgcGVyaGFwcyB0aGUgMm5kIGluc3RhbmNlIGlu
Cnhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoKSkgZG9uJ3QuIFdoaWxlIGl0
IGFsc28gaXMgYW4gb3B0aW9uIHRvIGZpeAphbGwgdGhlIGNhbGxlcnMsIGRl
YWwgd2l0aCB0aGUgaXNzdWUgaW4gcDJtX3JlbW92ZV9wYWdlKCkgaW5zdGVh
ZDoKUmVwbGFjZSB0aGUgQVNTRVJUKCkgYnkgYSBjb25kaXRpb25hbCBhbmQg
c3BsaXQgdGhlIGxvb3AgaW50byB0d28sIHN1Y2gKdGhhdCBhbGwgY2hlY2tp
bmcgZ2V0cyBkb25lIGJlZm9yZSBhbnkgbW9kaWZpY2F0aW9uIHdvdWxkIG9j
Y3VyLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1
c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJh
bnRAY2l0cml4LmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJl
dy5jb29wZXIzQGNpdHJpeC5jb20+CgotLS0gYS94ZW4vYXJjaC94ODYvbW0v
cDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC03NzgsNyAr
Nzc4LDYgQEAgcDJtX3JlbW92ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpw
Mm0sCiB7CiAgICAgdW5zaWduZWQgbG9uZyBpOwogICAgIGdmbl90IGdmbiA9
IF9nZm4oZ2ZuX2wpOwotICAgIG1mbl90IG1mbl9yZXR1cm47CiAgICAgcDJt
X3R5cGVfdCB0OwogICAgIHAybV9hY2Nlc3NfdCBhOwogCkBAIC03ODksMTUg
Kzc4OCwyNiBAQCBwMm1fcmVtb3ZlX3BhZ2Uoc3RydWN0IHAybV9kb21haW4g
KnAybSwKICAgICBBU1NFUlQoZ2ZuX2xvY2tlZF9ieV9tZShwMm0sIGdmbikp
OwogICAgIFAyTV9ERUJVRygicmVtb3ZpbmcgZ2ZuPSUjbHggbWZuPSUjbHhc
biIsIGdmbl9sLCBtZm4pOwogCisgICAgZm9yICggaSA9IDA7IGkgPCAoMVVM
IDw8IHBhZ2Vfb3JkZXIpOyApCisgICAgeworICAgICAgICB1bnNpZ25lZCBp
bnQgY3VyX29yZGVyOworICAgICAgICBtZm5fdCBtZm5fcmV0dXJuID0gcDJt
LT5nZXRfZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZ0LCAmYSwgMCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZj
dXJfb3JkZXIsIE5VTEwpOworCisgICAgICAgIGlmICggcDJtX2lzX3ZhbGlk
KHQpICYmCisgICAgICAgICAgICAgKCFtZm5fdmFsaWQoX21mbihtZm4pKSB8
fCBtZm4gKyBpICE9IG1mbl94KG1mbl9yZXR1cm4pKSApCisgICAgICAgICAg
ICByZXR1cm4gLUVJTFNFUTsKKworICAgICAgICBpICs9ICgxVUwgPDwgY3Vy
X29yZGVyKSAtICgoZ2ZuX2wgKyBpKSAmICgoMVVMIDw8IGN1cl9vcmRlcikg
LSAxKSk7CisgICAgfQorCiAgICAgaWYgKCBtZm5fdmFsaWQoX21mbihtZm4p
KSApCiAgICAgewogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwg
cGFnZV9vcmRlcik7IGkrKyApCiAgICAgICAgIHsKLSAgICAgICAgICAgIG1m
bl9yZXR1cm4gPSBwMm0tPmdldF9lbnRyeShwMm0sIGdmbl9hZGQoZ2ZuLCBp
KSwgJnQsICZhLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE5VTEwsIE5VTEwpOworICAgICAgICAgICAgcDJtLT5nZXRf
ZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZ0LCAmYSwgMCwgTlVMTCwg
TlVMTCk7CiAgICAgICAgICAgICBpZiAoICFwMm1faXNfZ3JhbnQodCkgJiYg
IXAybV9pc19zaGFyZWQodCkgJiYgIXAybV9pc19mb3JlaWduKHQpICkKICAg
ICAgICAgICAgICAgICBzZXRfZ3Bmbl9mcm9tX21mbihtZm4raSwgSU5WQUxJ
RF9NMlBfRU5UUlkpOwotICAgICAgICAgICAgQVNTRVJUKCAhcDJtX2lzX3Zh
bGlkKHQpIHx8IG1mbiArIGkgPT0gbWZuX3gobWZuX3JldHVybikgKTsKICAg
ICAgICAgfQogICAgIH0KICAgICByZXR1cm4gcDJtX3NldF9lbnRyeShwMm0s
IGdmbiwgSU5WQUxJRF9NRk4sIHBhZ2Vfb3JkZXIsIHAybV9pbnZhbGlkLAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9hY3BpLmMKQEAgLTk4LDEyICs5OCwyMSBAQCBzdGF0aWMgc3RydWN0
IGFtZF9pb21tdSAqIF9faW5pdCBmaW5kX2lvCiAgICAgcmV0dXJuIE5VTEw7
CiB9CiAKLXN0YXRpYyB2b2lkIF9faW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZSgKLSAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWlu
dDY0X3QgYmFzZSwgdWludDY0X3QgbGltaXQpCitzdGF0aWMgaW50IF9faW5p
dCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZSgKKyAgICBzdHJ1Y3Qg
YW1kX2lvbW11ICppb21tdSwgdWludDY0X3QgYmFzZSwgdWludDY0X3QgbGlt
aXQsCisgICAgYm9vbCBhbGwsIGJvb2wgaXcsIGJvb2wgaXIpCiB7CisgICAg
aWYgKCAhaXIgfHwgIWl3ICkKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKKwog
ICAgIC8qIG5lZWQgdG8gZXh0ZW5kIGV4Y2x1c2lvbiByYW5nZT8gKi8KICAg
ICBpZiAoIGlvbW11LT5leGNsdXNpb25fZW5hYmxlICkKICAgICB7CisgICAg
ICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9saW1pdCArIFBBR0VfU0laRSA8
IGJhc2UgfHwKKyAgICAgICAgICAgICBsaW1pdCArIFBBR0VfU0laRSA8IGlv
bW11LT5leGNsdXNpb25fYmFzZSB8fAorICAgICAgICAgICAgIGlvbW11LT5l
eGNsdXNpb25fYWxsb3dfYWxsICE9IGFsbCApCisgICAgICAgICAgICByZXR1
cm4gLUVCVVNZOworCiAgICAgICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9i
YXNlIDwgYmFzZSApCiAgICAgICAgICAgICBiYXNlID0gaW9tbXUtPmV4Y2x1
c2lvbl9iYXNlOwogICAgICAgICBpZiAoIGlvbW11LT5leGNsdXNpb25fbGlt
aXQgPiBsaW1pdCApCkBAIC0xMTEsMTYgKzEyMCwxMSBAQCBzdGF0aWMgdm9p
ZCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpCiAgICAgfQogCiAgICAg
aW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgPSBJT01NVV9DT05UUk9MX0VOQUJM
RUQ7CisgICAgaW9tbXUtPmV4Y2x1c2lvbl9hbGxvd19hbGwgPSBhbGw7CiAg
ICAgaW9tbXUtPmV4Y2x1c2lvbl9iYXNlID0gYmFzZTsKICAgICBpb21tdS0+
ZXhjbHVzaW9uX2xpbWl0ID0gbGltaXQ7Ci19CiAKLXN0YXRpYyB2b2lkIF9f
aW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9hbGwoCi0gICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXUsCi0gICAgdW5zaWduZWQgbG9uZyBi
YXNlLCB1bnNpZ25lZCBsb25nIGxpbWl0KQotewotICAgIHJlc2VydmVfaW9t
bXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCk7Ci0gICAg
aW9tbXUtPmV4Y2x1c2lvbl9hbGxvd19hbGwgPSBJT01NVV9DT05UUk9MX0VO
QUJMRUQ7CisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIF9faW5p
dCByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKApAQCAtMTU4LDYgKzE2
Miw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW4KICAgICB1bnNpZ25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBs
ZW5ndGg7CiAgICAgc3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgdW5z
aWduZWQgaW50IGJkZjsKKyAgICBpbnQgcmMgPSAwOwogCiAgICAgLyogaXMg
cGFydCBvZiBleGNsdXNpb24gcmFuZ2UgaW5zaWRlIG9mIElPTU1VIHZpcnR1
YWwgYWRkcmVzcyBzcGFjZT8gKi8KICAgICAvKiBub3RlOiAnbGltaXQnIHBh
cmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwpAQCAt
MTc5LDEwICsxODQsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJf
ZXhjbHVzaW9uX3JhbgogICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkK
ICAgICB7CiAgICAgICAgIGZvcl9lYWNoX2FtZF9pb21tdSggaW9tbXUgKQot
ICAgICAgICAgICAgcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2VfYWxs
KGlvbW11LCBiYXNlLCBsaW1pdCk7CisgICAgICAgIHsKKyAgICAgICAgICAg
IHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJh
c2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0cnVlIC8qIGFsbCAqLywgaXcsIGlyKTsKKyAgICAg
ICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHJj
OwogfQogCiBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25f
cmFuZ2VfZm9yX2RldmljZSgKQEAgLTE5Myw2ICsyMDMsNyBAQCBzdGF0aWMg
aW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgdW5zaWdu
ZWQgbG9uZyByYW5nZV90b3AsIGlvbW11X3RvcCwgbGVuZ3RoOwogICAgIHN0
cnVjdCBhbWRfaW9tbXUgKmlvbW11OwogICAgIHUxNiByZXE7CisgICAgaW50
IHJjID0gMDsKIAogICAgIGlvbW11ID0gZmluZF9pb21tdV9mb3JfZGV2aWNl
KHNlZywgYmRmKTsKICAgICBpZiAoICFpb21tdSApCkBAIC0yMjIsMTIgKzIz
MywxMyBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25f
cmFuCiAgICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNl
dHRpbmdzIGZvciBkZXZpY2UgKi8KICAgICBpZiAoIGxpbWl0ID49IGlvbW11
X3RvcCAgKQogICAgIHsKLSAgICAgICAgcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0KTsKKyAgICAgICAgcmMgPSBy
ZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGlt
aXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwogICAgICAgICBpdnJzX21h
cHBpbmdzW2JkZl0uZHRlX2FsbG93X2V4Y2x1c2lvbiA9IElPTU1VX0NPTlRS
T0xfRU5BQkxFRDsKICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFdLmR0ZV9h
bGxvd19leGNsdXNpb24gPSBJT01NVV9DT05UUk9MX0VOQUJMRUQ7CiAgICAg
fQogCi0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0
aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2lv
bW11X2RldmljZXMoCkBAIC0yMzcsNiArMjQ5LDcgQEAgc3RhdGljIGludCBf
X2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgIHVuc2lnbmVkIGxv
bmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAgICB1bnNpZ25l
ZCBpbnQgYmRmOwogICAgIHUxNiByZXE7CisgICAgaW50IHJjID0gMDsKIAog
ICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJ
T01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICovCiAgICAgLyogbm90ZTog
J2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWdu
ZWQgKi8KQEAgLTI2Nyw4ICsyODAsMTAgQEAgc3RhdGljIGludCBfX2luaXQg
cmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogCiAgICAgLyogcmVnaXN0ZXIgSU9N
TVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzICovCiAgICAgaWYgKCBsaW1p
dCA+PSBpb21tdV90b3AgKQotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZV9hbGwoaW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAgICByZXR1
cm4gMDsKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9y
YW5nZShpb21tdSwgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3LCBp
cik7CisKKyAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0
IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdCgK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtMTI3LDMyICsxMjcsNDggQEAgc3Rh
dGljIGludCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpbwogICAgIHJl
dHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCBfX2luaXQgcmVzZXJ2ZV91bml0
eV9tYXBfZm9yX2RldmljZSgKLSAgICB1MTYgc2VnLCB1MTYgYmRmLCB1bnNp
Z25lZCBsb25nIGJhc2UsCi0gICAgdW5zaWduZWQgbG9uZyBsZW5ndGgsIHU4
IGl3LCB1OCBpcikKK3N0YXRpYyBpbnQgX19pbml0IHJlc2VydmVfdW5pdHlf
bWFwX2Zvcl9kZXZpY2UoCisgICAgdWludDE2X3Qgc2VnLCB1aW50MTZfdCBi
ZGYsIHVuc2lnbmVkIGxvbmcgYmFzZSwKKyAgICB1bnNpZ25lZCBsb25nIGxl
bmd0aCwgYm9vbCBpdywgYm9vbCBpcikKIHsKICAgICBzdHJ1Y3QgaXZyc19t
YXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHNl
Zyk7Ci0gICAgdW5zaWduZWQgbG9uZyBvbGRfdG9wLCBuZXdfdG9wOworICAg
IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwID0gaXZyc19tYXBw
aW5nc1tiZGZdLnVuaXR5X21hcDsKIAotICAgIC8qIG5lZWQgdG8gZXh0ZW5k
IHVuaXR5LW1hcHBlZCByYW5nZT8gKi8KLSAgICBpZiAoIGl2cnNfbWFwcGlu
Z3NbYmRmXS51bml0eV9tYXBfZW5hYmxlICkKKyAgICAvKiBDaGVjayBmb3Ig
b3ZlcmxhcHMuICovCisgICAgZm9yICggOyB1bml0eV9tYXA7IHVuaXR5X21h
cCA9IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewotICAgICAgICBvbGRfdG9w
ID0gaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQgKwotICAg
ICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2VfbGVuZ3Ro
OwotICAgICAgICBuZXdfdG9wID0gYmFzZSArIGxlbmd0aDsKLSAgICAgICAg
aWYgKCBvbGRfdG9wID4gbmV3X3RvcCApCi0gICAgICAgICAgICBuZXdfdG9w
ID0gb2xkX3RvcDsKLSAgICAgICAgaWYgKCBpdnJzX21hcHBpbmdzW2JkZl0u
YWRkcl9yYW5nZV9zdGFydCA8IGJhc2UgKQotICAgICAgICAgICAgYmFzZSA9
IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3JhbmdlX3N0YXJ0OwotICAgICAg
ICBsZW5ndGggPSBuZXdfdG9wIC0gYmFzZTsKLSAgICB9Ci0KLSAgICAvKiBl
eHRlbmQgci93IHBlcm1pc3Npb21zIGFuZCBrZWVwIGFnZ3JlZ2F0ZSAqLwot
ICAgIGl2cnNfbWFwcGluZ3NbYmRmXS53cml0ZV9wZXJtaXNzaW9uID0gaXc7
Ci0gICAgaXZyc19tYXBwaW5nc1tiZGZdLnJlYWRfcGVybWlzc2lvbiA9IGly
OwotICAgIGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXBfZW5hYmxlID0g
SU9NTVVfQ09OVFJPTF9FTkFCTEVEOwotICAgIGl2cnNfbWFwcGluZ3NbYmRm
XS5hZGRyX3JhbmdlX3N0YXJ0ID0gYmFzZTsKLSAgICBpdnJzX21hcHBpbmdz
W2JkZl0uYWRkcl9yYW5nZV9sZW5ndGggPSBsZW5ndGg7CisgICAgICAgIC8q
CisgICAgICAgICAqIEV4YWN0IG1hdGNoZXMgYXJlIG9rYXkuIFRoaXMgY2Fu
IGluIHBhcnRpY3VsYXIgaGFwcGVuIHdoZW4KKyAgICAgICAgICogcmVnaXN0
ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3
aWNlIGZvciB0aGUKKyAgICAgICAgICogc2FtZSAocyxiLGQsZikuCisgICAg
ICAgICAqLworICAgICAgICBpZiAoIGJhc2UgPT0gdW5pdHlfbWFwLT5hZGRy
ICYmIGxlbmd0aCA9PSB1bml0eV9tYXAtPmxlbmd0aCAmJgorICAgICAgICAg
ICAgIGlyID09IHVuaXR5X21hcC0+cmVhZCAmJiBpdyA9PSB1bml0eV9tYXAt
PndyaXRlICkKKyAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgIGlm
ICggdW5pdHlfbWFwLT5hZGRyICsgdW5pdHlfbWFwLT5sZW5ndGggPiBiYXNl
ICYmCisgICAgICAgICAgICAgYmFzZSArIGxlbmd0aCA+IHVuaXR5X21hcC0+
YWRkciApCisgICAgICAgIHsKKyAgICAgICAgICAgIEFNRF9JT01NVV9ERUJV
RygiSVZNRCBFcnJvcjogb3ZlcmxhcCBbJWx4LCVseCkgdnMgWyVseCwlbHgp
XG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UsIGJhc2Ug
KyBsZW5ndGgsIHVuaXR5X21hcC0+YWRkciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bml0eV9tYXAtPmFkZHIgKyB1bml0eV9tYXAtPmxlbmd0
aCk7CisgICAgICAgICAgICByZXR1cm4gLUVQRVJNOworICAgICAgICB9Cisg
ICAgfQorCisgICAgLyogUG9wdWxhdGUgYW5kIGluc2VydCBhIG5ldyB1bml0
eSBtYXAuICovCisgICAgdW5pdHlfbWFwID0geG1hbGxvYyhzdHJ1Y3QgaXZy
c191bml0eV9tYXApOworICAgIGlmICggIXVuaXR5X21hcCApCisgICAgICAg
IHJldHVybiAtRU5PTUVNOworCisgICAgdW5pdHlfbWFwLT5yZWFkID0gaXI7
CisgICAgdW5pdHlfbWFwLT53cml0ZSA9IGl3OworICAgIHVuaXR5X21hcC0+
YWRkciA9IGJhc2U7CisgICAgdW5pdHlfbWFwLT5sZW5ndGggPSBsZW5ndGg7
CisgICAgdW5pdHlfbWFwLT5uZXh0ID0gaXZyc19tYXBwaW5nc1tiZGZdLnVu
aXR5X21hcDsKKyAgICBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwID0g
dW5pdHlfbWFwOworCisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQg
X19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfYWxsX2Rldmlj
ZXMoCkBAIC0xNzUsMTMgKzE5MSwxMyBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgICAgIGxlbmd0aCA9IHJhbmdl
X3RvcCAtIGJhc2U7CiAgICAgICAgIC8qIHJlc2VydmUgci93IHVuaXR5LW1h
cHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMgKi8KICAgICAgICAgLyog
bm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9u
IHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9IDA7IGJkZiA8IGl2cnNf
YmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAgICAgICAgIHJlc2VydmVfdW5p
dHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcs
IGlyKTsKKyAgICAgICAgZm9yICggYmRmID0gMDsgIXJjICYmIGJkZiA8IGl2
cnNfYmRmX2VudHJpZXM7IGJkZisrICkKKyAgICAgICAgICAgIHJjID0gcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVu
Z3RoLCBpdywgaXIpOwogICAgICAgICAvKiBwdXNoICdiYXNlJyBqdXN0IG91
dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAgICAgIGJh
c2UgPSBpb21tdV90b3A7CiAgICAgfQogICAgIC8qIHJlZ2lzdGVyIElPTU1V
IGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICggbGltaXQg
Pj0gaW9tbXVfdG9wICkKKyAgICBpZiAoICFyYyAmJiBsaW1pdCA+PSBpb21t
dV90b3AgKQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBp
b21tdSApCiAgICAgICAgIHsKQEAgLTIyMywxNSArMjM5LDE1IEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICAgICAg
bGVuZ3RoID0gcmFuZ2VfdG9wIC0gYmFzZTsKICAgICAgICAgLyogcmVzZXJ2
ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2UgKi8KICAg
ICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUg
ZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsK
LSAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIHJl
cSwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOworICAgICAgICByYyA9IHJlc2Vy
dmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0
aCwgaXcsIGlyKSA/OgorICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsK
IAogICAgICAgICAvKiBwdXNoICdiYXNlJyBqdXN0IG91dHNpZGUgb2Ygdmly
dHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAgICAgIGJhc2UgPSBpb21tdV90
b3A7CiAgICAgfQogCiAgICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9u
IHJhbmdlIHNldHRpbmdzIGZvciBkZXZpY2UgKi8KLSAgICBpZiAoIGxpbWl0
ID49IGlvbW11X3RvcCAgKQorICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlv
bW11X3RvcCAgKQogICAgIHsKICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgLyog
YWxsICovLCBpdywgaXIpOwpAQCAtMjYyLDE1ICsyNzgsMTUgQEAgc3RhdGlj
IGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbgogICAgICAgICBs
ZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwogICAgICAgICAvKiByZXNlcnZl
IHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICov
CiAgICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJlIHBhcnQgb2Yg
dGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAgICBmb3IgKCBiZGYgPSAw
OyBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCisgICAgICAgIGZv
ciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBi
ZGYrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIGlmICggaW9tbXUgPT0g
ZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQogICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFw
X2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
dywgaXIpOwogICAgICAgICAgICAgICAgIHJlcSA9IGdldF9pdnJzX21hcHBp
bmdzKGlvbW11LT5zZWcpW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKLSAgICAg
ICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11
LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyKTsKKyAgICAgICAg
ICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcikgPzoK
KyAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9k
ZXZpY2UoaW9tbXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3
LCBpcik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KIApAQCAtMjc5LDcg
KzI5NSw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW4KICAgICB9CiAKICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNp
b24gcmFuZ2Ugc2V0dGluZ3MgKi8KLSAgICBpZiAoIGxpbWl0ID49IGlvbW11
X3RvcCApCisgICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkK
ICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShp
b21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3LCBpcik7CiAK
LS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQu
YworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW5p
dC5jCkBAIC0xMTg5LDcgKzExODksNiBAQCBzdGF0aWMgaW50IF9faW5pdCBh
bGxvY19pdnJzX21hcHBpbmdzKHUxCiAgICAgewogICAgICAgICBpdnJzX21h
cHBpbmdzW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZCA9IGJkZjsKICAgICAgICAg
aXZyc19tYXBwaW5nc1tiZGZdLmR0ZV9hbGxvd19leGNsdXNpb24gPSBJT01N
VV9DT05UUk9MX0RJU0FCTEVEOwotICAgICAgICBpdnJzX21hcHBpbmdzW2Jk
Zl0udW5pdHlfbWFwX2VuYWJsZSA9IElPTU1VX0NPTlRST0xfRElTQUJMRUQ7
CiAgICAgICAgIGl2cnNfbWFwcGluZ3NbYmRmXS5pb21tdSA9IE5VTEw7CiAK
ICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmludHJlbWFwX3RhYmxlID0g
TlVMTDsKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9h
bWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQv
cGNpX2FtZF9pb21tdS5jCkBAIC0zNDYsMTUgKzM0NiwxNyBAQCBzdGF0aWMg
aW50IGFtZF9pb21tdV9hc3NpZ25fZGV2aWNlKHN0cnVjCiAgICAgc3RydWN0
IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBw
aW5ncyhwZGV2LT5zZWcpOwogICAgIGludCBiZGYgPSBQQ0lfQkRGMihwZGV2
LT5idXMsIGRldmZuKTsKICAgICBpbnQgcmVxX2lkID0gZ2V0X2RtYV9yZXF1
ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYpOworICAgIGNvbnN0IHN0cnVjdCBp
dnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwOwogCi0gICAgaWYgKCBpdnJzX21h
cHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwX2VuYWJsZSApCisgICAgZm9yICgg
dW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcDsg
dW5pdHlfbWFwOworICAgICAgICAgIHVuaXR5X21hcCA9IHVuaXR5X21hcC0+
bmV4dCApCiAgICAgewotICAgICAgICBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21h
aW5fdW5pdHlfbWFwKAotICAgICAgICAgICAgZCwKLSAgICAgICAgICAgIGl2
cnNfbWFwcGluZ3NbcmVxX2lkXS5hZGRyX3JhbmdlX3N0YXJ0LAotICAgICAg
ICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLmFkZHJfcmFuZ2VfbGVuZ3Ro
LAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLndyaXRlX3Bl
cm1pc3Npb24sCi0gICAgICAgICAgICBpdnJzX21hcHBpbmdzW3JlcV9pZF0u
cmVhZF9wZXJtaXNzaW9uKTsKKyAgICAgICAgaW50IHJjID0gYW1kX2lvbW11
X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAgICAgICAgICAgICAg
ICAgIGQsIHVuaXR5X21hcC0+YWRkciwgdW5pdHlfbWFwLT5sZW5ndGgsCisg
ICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPndyaXRlLCB1bml0eV9t
YXAtPnJlYWQpOworCisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAg
cmV0dXJuIHJjOwogICAgIH0KIAogICAgIHJldHVybiByZWFzc2lnbl9kZXZp
Y2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwgcGRldik7Ci0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvYW1kLWlvbW11LmgKKysrIGIveGVuL2luY2x1ZGUv
YXNtLXg4Ni9hbWQtaW9tbXUuaApAQCAtMTA4LDE1ICsxMDgsMTkgQEAgc3Ry
dWN0IGFtZF9pb21tdSB7CiAgICAgc3RydWN0IGxpc3RfaGVhZCBhdHNfZGV2
aWNlczsKIH07CiAKK3N0cnVjdCBpdnJzX3VuaXR5X21hcCB7CisgICAgYm9v
bCByZWFkOjE7CisgICAgYm9vbCB3cml0ZToxOworICAgIHBhZGRyX3QgYWRk
cjsKKyAgICB1bnNpZ25lZCBsb25nIGxlbmd0aDsKKyAgICBzdHJ1Y3QgaXZy
c191bml0eV9tYXAgKm5leHQ7Cit9OworCiBzdHJ1Y3QgaXZyc19tYXBwaW5n
cyB7CiAgICAgdTE2IGR0ZV9yZXF1ZXN0b3JfaWQ7CiAgICAgdTggZHRlX2Fs
bG93X2V4Y2x1c2lvbjsKLSAgICB1OCB1bml0eV9tYXBfZW5hYmxlOwotICAg
IHU4IHdyaXRlX3Blcm1pc3Npb247Ci0gICAgdTggcmVhZF9wZXJtaXNzaW9u
OwotICAgIHVuc2lnbmVkIGxvbmcgYWRkcl9yYW5nZV9zdGFydDsKLSAgICB1
bnNpZ25lZCBsb25nIGFkZHJfcmFuZ2VfbGVuZ3RoOwogICAgIHN0cnVjdCBh
bWRfaW9tbXUgKmlvbW11OworICAgIHN0cnVjdCBpdnJzX3VuaXR5X21hcCAq
dW5pdHlfbWFwOwogCiAgICAgLyogcGVyIGRldmljZSBpbnRlcnJ1cHQgcmVt
YXBwaW5nIHRhYmxlICovCiAgICAgdm9pZCAqaW50cmVtYXBfdGFibGU7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0
LmMKQEAgLTY3Miw3ICs2NzIsNyBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sIGdmCiAgICAgdWludDhfdCBpcGF0ID0gMDsKICAg
ICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsKICAgICBib29s
X3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsKLSAgICB1bnNpZ25lZCBpbnQgaW9t
bXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7Cisg
ICAgdW5zaWduZWQgaW50IGlvbW11X2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBwMm1hLCBtZm4pOwogICAgIGJvb2xfdCBuZWVkc19zeW5j
ID0gMTsKICAgICBlcHRfZW50cnlfdCBvbGRfZW50cnkgPSB7IC5lcHRlID0g
MCB9OwogICAgIGVwdF9lbnRyeV90IG5ld19lbnRyeSA9IHsgLmVwdGUgPSAw
IH07CkBAIC03OTksOCArNzk5LDggQEAgZXB0X3NldF9lbnRyeShzdHJ1Y3Qg
cDJtX2RvbWFpbiAqcDJtLCBnZgogCiAgICAgICAgIC8qIFNhZmUgdG8gcmVh
ZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2UgaG9sZCB0aGUgcDJtIGxvY2sgKi8K
ICAgICAgICAgaWYgKCBlcHRfZW50cnktPm1mbiA9PSBuZXdfZW50cnkubWZu
ICYmCi0gICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhlcHRfZW50
cnktPnNhX3AybXQsIF9tZm4oZXB0X2VudHJ5LT5tZm4pKSA9PQotICAgICAg
ICAgICAgIGlvbW11X2ZsYWdzICkKKyAgICAgICAgICAgICBwMm1fZ2V0X2lv
bW11X2ZsYWdzKGVwdF9lbnRyeS0+c2FfcDJtdCwgZXB0X2VudHJ5LT5hY2Nl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKGVw
dF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVfZmxhZ3MgKQogICAgICAgICAgICAg
bmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMDsKIAogICAgICAgICBlcHRfcDJt
X3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3X2VudHJ5LCBwMm10LCBwMm1hKTsK
LS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wdC5jCisrKyBiL3hlbi9hcmNo
L3g4Ni9tbS9wMm0tcHQuYwpAQCAtNTEyLDYgKzUxMiwxNiBAQCBpbnQgcDJt
X3B0X2hhbmRsZV9kZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAgICAgcmV0dXJu
IHJjOwogfQogCisvKiBSZWNvbnN0cnVjdCBhIGZha2UgcDJtX2FjY2Vzc190
IGZyb20gc3RvcmVkIFBURSBmbGFncy4gKi8KK3N0YXRpYyBwMm1fYWNjZXNz
X3QgcDJtX2ZsYWdzX3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7
CisgICAgaWYgKCBmbGFncyAmIF9QQUdFX1BSRVNFTlQgKQorICAgICAgICBy
ZXR1cm4gcDJtX2FjY2Vzc19uOworCisgICAgLyogTm8gbmVlZCB0byBsb29r
IGF0IF9QQUdFX05YIGZvciBub3cuICovCisgICAgcmV0dXJuIGZsYWdzICYg
X1BBR0VfUlcgPyBwMm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vzc19yOworfQor
CiAvKiBDaGVja3Mgb25seSBhcHBsaWNhYmxlIHRvIGVudHJpZXMgd2l0aCBv
cmRlciA+IFBBR0VfT1JERVJfNEsgKi8KIHN0YXRpYyB2b2lkIGNoZWNrX2Vu
dHJ5KG1mbl90IG1mbiwgcDJtX3R5cGVfdCBuZXcsIHAybV90eXBlX3Qgb2xk
LAogICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVy
KQpAQCAtNTQ2LDcgKzU1Niw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0
IHAybV9kb21haW4gKnAybSwKICAgICBsMl9wZ2VudHJ5X3QgbDJlX2NvbnRl
bnQ7CiAgICAgbDNfcGdlbnRyeV90IGwzZV9jb250ZW50OwogICAgIGludCBy
YzsKLSAgICB1bnNpZ25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdzID0gcDJtX2dl
dF9pb21tdV9mbGFncyhwMm10LCBtZm4pOworICAgIHVuc2lnbmVkIGludCBp
b21tdV9wdGVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIHAy
bWEsIG1mbik7CiAgICAgLyoKICAgICAgKiBvbGRfbWZuIGFuZCBpb21tdV9v
bGRfZmxhZ3MgY29udHJvbCBwb3NzaWJsZSBmbHVzaC91cGRhdGUgbmVlZHMg
b24gdGhlCiAgICAgICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBN
Rk4gb3IgZmxhZ3MgKGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4KQEAgLTYw
OSw2ICs2MTksNyBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9t
YWluICpwMm0sCiAgICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRf
cGZuKCpwMm1fZW50cnkpOwogICAgICAgICAgICAgICAgIGlvbW11X29sZF9m
bGFncyA9CiAgICAgICAgICAgICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxh
Z3MocDJtX2ZsYWdzX3RvX3R5cGUoZmxhZ3MpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9mbGFnc190b19hY2Nlc3Mo
ZmxhZ3MpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIF9tZm4ob2xkX21mbikpOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgZWxzZQpAQCAtNjU0LDkgKzY2NSwxMCBAQCBwMm1fcHRfc2V0X2VudHJ5
KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRSSUVTKTsKICAg
ICAgICAgQVNTRVJUKHAybV9lbnRyeSk7CiAgICAgICAgIG9sZF9tZm4gPSBs
MWVfZ2V0X3BmbigqcDJtX2VudHJ5KTsKKyAgICAgICAgZmxhZ3MgPSBsMWVf
Z2V0X2ZsYWdzKCpwMm1fZW50cnkpOwogICAgICAgICBpb21tdV9vbGRfZmxh
Z3MgPQotICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxh
Z3NfdG9fdHlwZShsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7Cisg
ICAgICAgICAgICBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9mbGFnc190b190
eXBlKGZsYWdzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksIF9tZm4ob2xkX21mbikpOwog
CiAgICAgICAgIGlmICggbWZuX3ZhbGlkKG1mbikgfHwgcDJtX2FsbG93c19p
bnZhbGlkX21mbihwMm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50
ID0gcDJtX2wxZV9mcm9tX3BmbihtZm5feChtZm4pLApAQCAtNjg3LDYgKzY5
OSw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAy
bSwKICAgICAgICAgICAgICAgICBvbGRfbWZuID0gbDFlX2dldF9wZm4oKnAy
bV9lbnRyeSk7CiAgICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0K
ICAgICAgICAgICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1f
ZmxhZ3NfdG9fdHlwZShmbGFncyksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyks
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21m
bihvbGRfbWZuKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNl
Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2lu
Y2x1ZGUvYXNtLXg4Ni9wMm0uaApAQCAtODk5LDcgKzg5OSw4IEBAIHN0YXRp
YyBpbmxpbmUgdm9pZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnUKIC8qCiAgKiBw
Mm0gdHlwZSB0byBJT01NVSBmbGFncwogICovCi1zdGF0aWMgaW5saW5lIHVu
c2lnbmVkIGludCBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90eXBlX3QgcDJt
dCwgbWZuX3QgbWZuKQorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJt
X2dldF9pb21tdV9mbGFncyhwMm1fdHlwZV90IHAybXQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9hY2Nl
c3NfdCBwMm1hLCBtZm5fdCBtZm4pCiB7CiAgICAgdW5zaWduZWQgaW50IGZs
YWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC0x
MzQxLDcgKzEzNDEsNyBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShz
dHJ1Y3QgZG9tYWluCiAgICAgICAgIGlmICggIWhhc19pb21tdV9wdChkKSAp
CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgcmV0dXJuIGlvbW11
X2xlZ2FjeV9tYXAoZCwgX2RmbihnZm5fbCksIF9tZm4oZ2ZuX2wpLCBQQUdF
X09SREVSXzRLLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ
T01NVUZfcmVhZGFibGUgfCBJT01NVUZfd3JpdGFibGUpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwMm1fYWNjZXNzX3RvX2lvbW11X2Zs
YWdzKHAybWEpKTsKICAgICB9CiAKICAgICBnZm5fbG9jayhwMm0sIGdmbiwg
MCk7Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5j
CisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jCkBA
IC00MiwxMiArNDIsNiBAQAogI2luY2x1ZGUgInZ0ZC5oIgogI2luY2x1ZGUg
Ii4uL2F0cy5oIgogCi1zdHJ1Y3QgbWFwcGVkX3JtcnIgewotICAgIHN0cnVj
dCBsaXN0X2hlYWQgbGlzdDsKLSAgICB1NjQgYmFzZSwgZW5kOwotICAgIHVu
c2lnbmVkIGludCBjb3VudDsKLX07Ci0KIC8qIFBvc3NpYmxlIHVuZmlsdGVy
ZWQgTEFQSUMvTVNJIG1lc3NhZ2VzIGZyb20gdW50cnVzdGVkIHNvdXJjZXM/
ICovCiBib29sIF9fcmVhZF9tb3N0bHkgdW50cnVzdGVkX21zaTsKIApAQCAt
MTc4NywxNiArMTc4MSwxMSBAQCBvdXQ6CiBzdGF0aWMgdm9pZCBpb21tdV9k
b21haW5fdGVhcmRvd24oc3RydWN0IGRvbWFpbiAqZCkKIHsKICAgICBzdHJ1
Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21tdShkKTsKLSAgICBzdHJ1
Y3QgbWFwcGVkX3JtcnIgKm1ybXJyLCAqdG1wOwogCiAgICAgaWYgKCBsaXN0
X2VtcHR5KCZhY3BpX2RyaGRfdW5pdHMpICkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlICggbXJtcnIsIHRtcCwg
JmhkLT5hcmNoLm1hcHBlZF9ybXJycywgbGlzdCApCi0gICAgewotICAgICAg
ICBsaXN0X2RlbCgmbXJtcnItPmxpc3QpOwotICAgICAgICB4ZnJlZShtcm1y
cik7Ci0gICAgfQorICAgIGlvbW11X2lkZW50aXR5X21hcF90ZWFyZG93bihk
KTsKIAogICAgIEFTU0VSVChpb21tdV9lbmFibGVkKTsKIApAQCAtMTk1NSw3
NCArMTk0NCw2IEBAIHN0YXRpYyB2b2lkIGlvbW11X3NldF9wZ2Qoc3RydWN0
IGRvbWFpbgogICAgICAgICBwYWdldGFibGVfZ2V0X3BhZGRyKHBhZ2V0YWJs
ZV9mcm9tX21mbihwZ2RfbWZuKSk7CiB9CiAKLXN0YXRpYyBpbnQgcm1ycl9p
ZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBkb21haW4gKmQsIGJvb2xfdCBtYXAs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1
Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnIsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1MzIgZmxhZykKLXsKLSAgICB1bnNpZ25lZCBsb25n
IGJhc2VfcGZuID0gcm1yci0+YmFzZV9hZGRyZXNzID4+IFBBR0VfU0hJRlRf
NEs7Ci0gICAgdW5zaWduZWQgbG9uZyBlbmRfcGZuID0gUEFHRV9BTElHTl80
SyhybXJyLT5lbmRfYWRkcmVzcykgPj4gUEFHRV9TSElGVF80SzsKLSAgICBz
dHJ1Y3QgbWFwcGVkX3JtcnIgKm1ybXJyOwotICAgIHN0cnVjdCBkb21haW5f
aW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwotCi0gICAgQVNTRVJUKHBjaWRl
dnNfbG9ja2VkKCkpOwotICAgIEFTU0VSVChybXJyLT5iYXNlX2FkZHJlc3Mg
PCBybXJyLT5lbmRfYWRkcmVzcyk7Ci0KLSAgICAvKgotICAgICAqIE5vIG5l
ZWQgdG8gYWNxdWlyZSBoZC0+YXJjaC5tYXBwaW5nX2xvY2s6IEJvdGggaW5z
ZXJ0aW9uIGFuZCByZW1vdmFsCi0gICAgICogZ2V0IGRvbmUgd2hpbGUgaG9s
ZGluZyBwY2lkZXZzX2xvY2suCi0gICAgICovCi0gICAgbGlzdF9mb3JfZWFj
aF9lbnRyeSggbXJtcnIsICZoZC0+YXJjaC5tYXBwZWRfcm1ycnMsIGxpc3Qg
KQotICAgIHsKLSAgICAgICAgaWYgKCBtcm1yci0+YmFzZSA9PSBybXJyLT5i
YXNlX2FkZHJlc3MgJiYKLSAgICAgICAgICAgICBtcm1yci0+ZW5kID09IHJt
cnItPmVuZF9hZGRyZXNzICkKLSAgICAgICAgewotICAgICAgICAgICAgaW50
IHJldCA9IDA7Ci0KLSAgICAgICAgICAgIGlmICggbWFwICkKLSAgICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgICArK21ybXJyLT5jb3VudDsKLSAgICAg
ICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgaWYgKCAtLW1ybXJyLT5jb3VudCApCi0gICAgICAgICAgICAgICAg
cmV0dXJuIDA7Ci0KLSAgICAgICAgICAgIHdoaWxlICggYmFzZV9wZm4gPCBl
bmRfcGZuICkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBpZiAo
IGNsZWFyX2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3BmbikgKQotICAg
ICAgICAgICAgICAgICAgICByZXQgPSAtRU5YSU87Ci0gICAgICAgICAgICAg
ICAgYmFzZV9wZm4rKzsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAg
bGlzdF9kZWwoJm1ybXJyLT5saXN0KTsKLSAgICAgICAgICAgIHhmcmVlKG1y
bXJyKTsKLSAgICAgICAgICAgIHJldHVybiByZXQ7Ci0gICAgICAgIH0KLSAg
ICB9Ci0KLSAgICBpZiAoICFtYXAgKQotICAgICAgICByZXR1cm4gLUVOT0VO
VDsKLQotICAgIHdoaWxlICggYmFzZV9wZm4gPCBlbmRfcGZuICkKLSAgICB7
Ci0gICAgICAgIGludCBlcnIgPSBzZXRfaWRlbnRpdHlfcDJtX2VudHJ5KGQs
IGJhc2VfcGZuLCBwMm1fYWNjZXNzX3J3LCBmbGFnKTsKLQotICAgICAgICBp
ZiAoIGVyciApCi0gICAgICAgICAgICByZXR1cm4gZXJyOwotICAgICAgICBi
YXNlX3BmbisrOwotICAgIH0KLQotICAgIG1ybXJyID0geG1hbGxvYyhzdHJ1
Y3QgbWFwcGVkX3JtcnIpOwotICAgIGlmICggIW1ybXJyICkKLSAgICAgICAg
cmV0dXJuIC1FTk9NRU07Ci0gICAgbXJtcnItPmJhc2UgPSBybXJyLT5iYXNl
X2FkZHJlc3M7Ci0gICAgbXJtcnItPmVuZCA9IHJtcnItPmVuZF9hZGRyZXNz
OwotICAgIG1ybXJyLT5jb3VudCA9IDE7Ci0gICAgbGlzdF9hZGRfdGFpbCgm
bXJtcnItPmxpc3QsICZoZC0+YXJjaC5tYXBwZWRfcm1ycnMpOwotCi0gICAg
cmV0dXJuIDA7Ci19Ci0KIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfYWRkX2Rl
dmljZSh1OCBkZXZmbiwgc3RydWN0IHBjaV9kZXYgKnBkZXYpCiB7CiAgICAg
c3RydWN0IGFjcGlfcm1ycl91bml0ICpybXJyOwpAQCAtMjA1NCw3ICsxOTc1
LDkgQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9hZGRfZGV2aWNlKHU4IGRl
dgogICAgICAgICAgICAgICogU2luY2UgUk1SUnMgYXJlIGFsd2F5cyByZXNl
cnZlZCBpbiB0aGUgZTgyMCBtYXAgZm9yIHRoZSBoYXJkd2FyZQogICAgICAg
ICAgICAgICogZG9tYWluLCB0aGVyZSBzaG91bGRuJ3QgYmUgYSBjb25mbGlj
dC4KICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgcmV0ID0gcm1ycl9p
ZGVudGl0eV9tYXBwaW5nKHBkZXYtPmRvbWFpbiwgMSwgcm1yciwgMCk7Cisg
ICAgICAgICAgICByZXQgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKHBkZXYt
PmRvbWFpbiwgcDJtX2FjY2Vzc19ydywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcm1yci0+YmFzZV9hZGRyZXNzLCBybXJy
LT5lbmRfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMCk7CiAgICAgICAgICAgICBpZiAoIHJldCApCiAgICAg
ICAgICAgICAgICAgZHByaW50ayhYRU5MT0dfRVJSIFZURFBSRUZJWCwgImQl
ZDogUk1SUiBtYXBwaW5nIGZhaWxlZFxuIiwKICAgICAgICAgICAgICAgICAg
ICAgICAgIHBkZXYtPmRvbWFpbi0+ZG9tYWluX2lkKTsKQEAgLTIwOTksNyAr
MjAyMiw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfcmVtb3ZlX2Rldmlj
ZSh1OAogICAgICAgICAgKiBBbnkgZmxhZyBpcyBub3RoaW5nIHRvIGNsZWFy
IHRoZXNlIG1hcHBpbmdzIGJ1dCBoZXJlCiAgICAgICAgICAqIGl0cyBhbHdh
eXMgc2FmZSBhbmQgc3RyaWN0IHRvIHNldCAwLgogICAgICAgICAgKi8KLSAg
ICAgICAgcm1ycl9pZGVudGl0eV9tYXBwaW5nKHBkZXYtPmRvbWFpbiwgMCwg
cm1yciwgMCk7CisgICAgICAgIGlvbW11X2lkZW50aXR5X21hcHBpbmcocGRl
di0+ZG9tYWluLCBwMm1fYWNjZXNzX3gsIHJtcnItPmJhc2VfYWRkcmVzcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5lbmRfYWRk
cmVzcywgMCk7CiAgICAgfQogCiAgICAgcmV0dXJuIGRvbWFpbl9jb250ZXh0
X3VubWFwKHBkZXYtPmRvbWFpbiwgZGV2Zm4sIHBkZXYpOwpAQCAtMjI2Niw3
ICsyMTkwLDggQEAgc3RhdGljIHZvaWQgX19od2RvbV9pbml0IHNldHVwX2h3
ZG9tX3JtcgogICAgICAgICAgKiBkb21haW4sIHRoZXJlIHNob3VsZG4ndCBi
ZSBhIGNvbmZsaWN0LiBTbyBpdHMgYWx3YXlzIHNhZmUgYW5kCiAgICAgICAg
ICAqIHN0cmljdCB0byBzZXQgMC4KICAgICAgICAgICovCi0gICAgICAgIHJl
dCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhkLCAxLCBybXJyLCAwKTsKKyAg
ICAgICAgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhkLCBwMm1fYWNj
ZXNzX3J3LCBybXJyLT5iYXNlX2FkZHJlc3MsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcm1yci0+ZW5kX2FkZHJlc3MsIDApOwog
ICAgICAgICBpZiAoIHJldCApCiAgICAgICAgICAgICBkcHJpbnRrKFhFTkxP
R19FUlIgVlREUFJFRklYLAogICAgICAgICAgICAgICAgICAgICAgIklPTU1V
OiBtYXBwaW5nIHJlc2VydmVkIHJlZ2lvbiBmYWlsZWRcbiIpOwpAQCAtMjQy
NSw3ICsyMzUwLDkgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Vfb3du
ZXJzaGlwKAogICAgICAgICAgICAgICAgICAqIEFueSBSTVJSIGZsYWcgaXMg
YWx3YXlzIGlnbm9yZWQgd2hlbiByZW1vdmUgYSBkZXZpY2UsCiAgICAgICAg
ICAgICAgICAgICogYnV0IGl0cyBhbHdheXMgc2FmZSBhbmQgc3RyaWN0IHRv
IHNldCAwLgogICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAg
IHJldCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhzb3VyY2UsIDAsIHJtcnIs
IDApOworICAgICAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50aXR5X21h
cHBpbmcoc291cmNlLCBwMm1fYWNjZXNzX3gsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5iYXNlX2FkZHJl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBybXJyLT5lbmRfYWRkcmVzcywgMCk7CiAgICAgICAgICAgICAgICAg
aWYgKCByZXQgIT0gLUVOT0VOVCApCiAgICAgICAgICAgICAgICAgICAgIHJl
dHVybiByZXQ7CiAgICAgICAgICAgICB9CkBAIC0yNTIyLDcgKzI0NDksOCBA
QCBzdGF0aWMgaW50IGludGVsX2lvbW11X2Fzc2lnbl9kZXZpY2UoCiAgICAg
ICAgICAgICAgUENJX0JVUyhiZGYpID09IGJ1cyAmJgogICAgICAgICAgICAg
IFBDSV9ERVZGTjIoYmRmKSA9PSBkZXZmbiApCiAgICAgICAgIHsKLSAgICAg
ICAgICAgIHJldCA9IHJtcnJfaWRlbnRpdHlfbWFwcGluZyhkLCAxLCBybXJy
LCBmbGFnKTsKKyAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50aXR5X21h
cHBpbmcoZCwgcDJtX2FjY2Vzc19ydywgcm1yci0+YmFzZV9hZGRyZXNzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJy
LT5lbmRfYWRkcmVzcywgZmxhZyk7CiAgICAgICAgICAgICBpZiAoIHJldCAp
CiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgaW50IHJjOwotLS0g
YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYworKysgYi94
ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwpAQCAtMTUwLDcg
KzE1MCw3IEBAIGludCBhcmNoX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdCBk
b21haW4KICAgICBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21t
dShkKTsKIAogICAgIHNwaW5fbG9ja19pbml0KCZoZC0+YXJjaC5tYXBwaW5n
X2xvY2spOwotICAgIElOSVRfTElTVF9IRUFEKCZoZC0+YXJjaC5tYXBwZWRf
cm1ycnMpOworICAgIElOSVRfTElTVF9IRUFEKCZoZC0+YXJjaC5pZGVudGl0
eV9tYXBzKTsKIAogICAgIHJldHVybiAwOwogfQpAQCAtMTU5LDYgKzE1OSw5
OSBAQCB2b2lkIGFyY2hfaW9tbXVfZG9tYWluX2Rlc3Ryb3koc3RydWN0IGRv
CiB7CiB9CiAKK3N0cnVjdCBpZGVudGl0eV9tYXAgeworICAgIHN0cnVjdCBs
aXN0X2hlYWQgbGlzdDsKKyAgICBwYWRkcl90IGJhc2UsIGVuZDsKKyAgICBw
Mm1fYWNjZXNzX3QgYWNjZXNzOworICAgIHVuc2lnbmVkIGludCBjb3VudDsK
K307CisKK2ludCBpb21tdV9pZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBkb21h
aW4gKmQsIHAybV9hY2Nlc3NfdCBwMm1hLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGVuZCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKQoreworICAg
IHVuc2lnbmVkIGxvbmcgYmFzZV9wZm4gPSBiYXNlID4+IFBBR0VfU0hJRlRf
NEs7CisgICAgdW5zaWduZWQgbG9uZyBlbmRfcGZuID0gUEFHRV9BTElHTl80
SyhlbmQpID4+IFBBR0VfU0hJRlRfNEs7CisgICAgc3RydWN0IGlkZW50aXR5
X21hcCAqbWFwOworICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9t
X2lvbW11KGQpOworCisgICAgQVNTRVJUKHBjaWRldnNfbG9ja2VkKCkpOwor
ICAgIEFTU0VSVChiYXNlIDwgZW5kKTsKKworICAgIC8qCisgICAgICogTm8g
bmVlZCB0byBhY3F1aXJlIGhkLT5hcmNoLm1hcHBpbmdfbG9jazogQm90aCBp
bnNlcnRpb24gYW5kIHJlbW92YWwKKyAgICAgKiBnZXQgZG9uZSB3aGlsZSBo
b2xkaW5nIHBjaWRldnNfbG9jay4KKyAgICAgKi8KKyAgICBsaXN0X2Zvcl9l
YWNoX2VudHJ5KCBtYXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzLCBsaXN0
ICkKKyAgICB7CisgICAgICAgIGlmICggbWFwLT5iYXNlID09IGJhc2UgJiYg
bWFwLT5lbmQgPT0gZW5kICkKKyAgICAgICAgeworICAgICAgICAgICAgaW50
IHJldCA9IDA7CisKKyAgICAgICAgICAgIGlmICggcDJtYSAhPSBwMm1fYWNj
ZXNzX3ggKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICgg
bWFwLT5hY2Nlc3MgIT0gcDJtYSApCisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiAtRUFERFJJTlVTRTsKKyAgICAgICAgICAgICAgICArK21hcC0+Y291
bnQ7CisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIGlmICggLS1tYXAtPmNvdW50ICkKKyAgICAgICAg
ICAgICAgICByZXR1cm4gMDsKKworICAgICAgICAgICAgd2hpbGUgKCBiYXNl
X3BmbiA8IGVuZF9wZm4gKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGlmICggY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KGQsIGJhc2VfcGZu
KSApCisgICAgICAgICAgICAgICAgICAgIHJldCA9IC1FTlhJTzsKKyAgICAg
ICAgICAgICAgICBiYXNlX3BmbisrOworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICBsaXN0X2RlbCgmbWFwLT5saXN0KTsKKyAgICAgICAgICAgIHhm
cmVlKG1hcCk7CisKKyAgICAgICAgICAgIHJldHVybiByZXQ7CisgICAgICAg
IH0KKworICAgICAgICBpZiAoIGVuZCA+PSBtYXAtPmJhc2UgJiYgbWFwLT5l
bmQgPj0gYmFzZSApCisgICAgICAgICAgICByZXR1cm4gLUVBRERSSU5VU0U7
CisgICAgfQorCisgICAgaWYgKCBwMm1hID09IHAybV9hY2Nlc3NfeCApCisg
ICAgICAgIHJldHVybiAtRU5PRU5UOworCisgICAgd2hpbGUgKCBiYXNlX3Bm
biA8IGVuZF9wZm4gKQorICAgIHsKKyAgICAgICAgaW50IGVyciA9IHNldF9p
ZGVudGl0eV9wMm1fZW50cnkoZCwgYmFzZV9wZm4sIHAybWEsIGZsYWcpOwor
CisgICAgICAgIGlmICggZXJyICkKKyAgICAgICAgICAgIHJldHVybiBlcnI7
CisgICAgICAgIGJhc2VfcGZuKys7CisgICAgfQorCisgICAgbWFwID0geG1h
bGxvYyhzdHJ1Y3QgaWRlbnRpdHlfbWFwKTsKKyAgICBpZiAoICFtYXAgKQor
ICAgICAgICByZXR1cm4gLUVOT01FTTsKKyAgICBtYXAtPmJhc2UgPSBiYXNl
OworICAgIG1hcC0+ZW5kID0gZW5kOworICAgIG1hcC0+YWNjZXNzID0gcDJt
YTsKKyAgICBtYXAtPmNvdW50ID0gMTsKKyAgICBsaXN0X2FkZF90YWlsKCZt
YXAtPmxpc3QsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzKTsKKworICAgIHJl
dHVybiAwOworfQorCit2b2lkIGlvbW11X2lkZW50aXR5X21hcF90ZWFyZG93
bihzdHJ1Y3QgZG9tYWluICpkKQoreworICAgIHN0cnVjdCBkb21haW5faW9t
bXUgKmhkID0gZG9tX2lvbW11KGQpOworICAgIHN0cnVjdCBpZGVudGl0eV9t
YXAgKm1hcCwgKnRtcDsKKworICAgIGxpc3RfZm9yX2VhY2hfZW50cnlfc2Fm
ZSAoIG1hcCwgdG1wLCAmaGQtPmFyY2guaWRlbnRpdHlfbWFwcywgbGlzdCAp
CisgICAgeworICAgICAgICBsaXN0X2RlbCgmbWFwLT5saXN0KTsKKyAgICAg
ICAgeGZyZWUobWFwKTsKKyAgICB9Cit9CisKIHN0YXRpYyBib29sIF9faHdk
b21faW5pdCBod2RvbV9pb21tdV9tYXAoY29uc3Qgc3RydWN0IGRvbWFpbiAq
ZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dW5zaWduZWQgbG9uZyBwZm4sCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbWF4X3BmbikKLS0tIGEv
eGVuL2luY2x1ZGUvYXNtLXg4Ni9pb21tdS5oCisrKyBiL3hlbi9pbmNsdWRl
L2FzbS14ODYvaW9tbXUuaApAQCAtMTYsNiArMTYsNyBAQAogCiAjaW5jbHVk
ZSA8eGVuL2Vycm5vLmg+CiAjaW5jbHVkZSA8eGVuL2xpc3QuaD4KKyNpbmNs
dWRlIDx4ZW4vbWVtX2FjY2Vzcy5oPgogI2luY2x1ZGUgPHhlbi9zcGlubG9j
ay5oPgogI2luY2x1ZGUgPGFzbS9wcm9jZXNzb3IuaD4KICNpbmNsdWRlIDxh
c20vaHZtL3ZteC92bWNzLmg+CkBAIC00OCw3ICs0OSw3IEBAIHN0cnVjdCBh
cmNoX2lvbW11CiAgICAgc3BpbmxvY2tfdCBtYXBwaW5nX2xvY2s7ICAgICAg
ICAgICAgLyogaW8gcGFnZSB0YWJsZSBsb2NrICovCiAgICAgaW50IGFnYXc7
ICAgICAvKiBhZGp1c3RlZCBndWVzdCBhZGRyZXNzIHdpZHRoLCAwIGlzIGxl
dmVsIDIgMzAtYml0ICovCiAgICAgdTY0IGlvbW11X2JpdG1hcDsgICAgICAg
ICAgICAgIC8qIGJpdG1hcCBvZiBpb21tdShzKSB0aGF0IHRoZSBkb21haW4g
dXNlcyAqLwotICAgIHN0cnVjdCBsaXN0X2hlYWQgbWFwcGVkX3JtcnJzOwor
ICAgIHN0cnVjdCBsaXN0X2hlYWQgaWRlbnRpdHlfbWFwczsKIAogICAgIC8q
IGFtZCBpb21tdSBzdXBwb3J0ICovCiAgICAgaW50IHBhZ2luZ19tb2RlOwpA
QCAtOTQsNiArOTUsMTEgQEAgYm9vbF90IGlvbW11X3N1cHBvcnRzX2VpbSh2
b2lkKTsKIGludCBpb21tdV9lbmFibGVfeDJhcGljX0lSKHZvaWQpOwogdm9p
ZCBpb21tdV9kaXNhYmxlX3gyYXBpY19JUih2b2lkKTsKIAoraW50IGlvbW11
X2lkZW50aXR5X21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCwgcDJtX2FjY2Vz
c190IHAybWEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90
IGJhc2UsIHBhZGRyX3QgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IGZsYWcpOwordm9pZCBpb21tdV9pZGVudGl0eV9t
YXBfdGVhcmRvd24oc3RydWN0IGRvbWFpbiAqZCk7CisKIGV4dGVybiBib29s
IHVudHJ1c3RlZF9tc2k7CiAKIGludCBwaV91cGRhdGVfaXJ0ZShjb25zdCBz
dHJ1Y3QgcGlfZGVzYyAqcGlfZGVzYywgY29uc3Qgc3RydWN0IHBpcnEgKnBp
cnEsCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVu
L2luY2x1ZGUvYXNtLXg4Ni9wMm0uaApAQCAtODk2LDYgKzg5NiwzNCBAQCBz
dHJ1Y3QgcDJtX2RvbWFpbiAqcDJtX2dldF9hbHRwMm0oc3RydWN0CiBzdGF0
aWMgaW5saW5lIHZvaWQgcDJtX2FsdHAybV9jaGVjayhzdHJ1Y3QgdmNwdSAq
diwgdWludDE2X3QgaWR4KSB7fQogI2VuZGlmCiAKKy8qIHAybSBhY2Nlc3Mg
dG8gSU9NTVUgZmxhZ3MgKi8KK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50
IHAybV9hY2Nlc3NfdG9faW9tbXVfZmxhZ3MocDJtX2FjY2Vzc190IHAybWEp
Cit7CisgICAgc3dpdGNoICggcDJtYSApCisgICAgeworICAgIGNhc2UgcDJt
X2FjY2Vzc19ydzoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcnd4OgorICAgICAg
ICByZXR1cm4gSU9NTVVGX3JlYWRhYmxlIHwgSU9NTVVGX3dyaXRhYmxlOwor
CisgICAgY2FzZSBwMm1fYWNjZXNzX3I6CisgICAgY2FzZSBwMm1fYWNjZXNz
X3J4OgorICAgIGNhc2UgcDJtX2FjY2Vzc19yeDJydzoKKyAgICAgICAgcmV0
dXJuIElPTU1VRl9yZWFkYWJsZTsKKworICAgIGNhc2UgcDJtX2FjY2Vzc193
OgorICAgIGNhc2UgcDJtX2FjY2Vzc193eDoKKyAgICAgICAgcmV0dXJuIElP
TU1VRl93cml0YWJsZTsKKworICAgIGNhc2UgcDJtX2FjY2Vzc19uOgorICAg
IGNhc2UgcDJtX2FjY2Vzc194OgorICAgIGNhc2UgcDJtX2FjY2Vzc19uMnJ3
eDoKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgQVNTRVJUX1VO
UkVBQ0hBQkxFKCk7CisgICAgcmV0dXJuIDA7Cit9CisKIC8qCiAgKiBwMm0g
dHlwZSB0byBJT01NVSBmbGFncwogICovCkBAIC05MTcsOSArOTQ1LDEwIEBA
IHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHAybV9nZXRfaW9tbXUKICAg
ICAgICAgZmxhZ3MgPSBJT01NVUZfcmVhZGFibGU7CiAgICAgICAgIGJyZWFr
OwogICAgIGNhc2UgcDJtX21taW9fZGlyZWN0OgotICAgICAgICBmbGFncyA9
IElPTU1VRl9yZWFkYWJsZTsKLSAgICAgICAgaWYgKCAhcmFuZ2VzZXRfY29u
dGFpbnNfc2luZ2xldG9uKG1taW9fcm9fcmFuZ2VzLCBtZm5feChtZm4pKSAp
Ci0gICAgICAgICAgICBmbGFncyB8PSBJT01NVUZfd3JpdGFibGU7CisgICAg
ICAgIGZsYWdzID0gcDJtX2FjY2Vzc190b19pb21tdV9mbGFncyhwMm1hKTsK
KyAgICAgICAgaWYgKCAoZmxhZ3MgJiBJT01NVUZfd3JpdGFibGUpICYmCisg
ICAgICAgICAgICAgcmFuZ2VzZXRfY29udGFpbnNfc2luZ2xldG9uKG1taW9f
cm9fcmFuZ2VzLCBtZm5feChtZm4pKSApCisgICAgICAgICAgICBmbGFncyAm
PSB+SU9NTVVGX3dyaXRhYmxlOwogICAgICAgICBicmVhazsKICAgICBkZWZh
dWx0OgogICAgICAgICBmbGFncyA9IDA7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfbWFwLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X21hcC5jCkBAIC02MTMsMzggKzYxMyw0OSBAQCBpbnQgYW1kX2lvbW11
X2ZsdXNoX2lvdGxiX2FsbChzdHJ1Y3QgZG9tCiAgICAgcmV0dXJuIDA7CiB9
CiAKLWludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKHN0
cnVjdCBkb21haW4gKmRvbWFpbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgcGh5c19hZGRyLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBz
aXplLCBpbnQgaXcsIGludCBpcikKK2ludCBhbWRfaW9tbXVfcmVzZXJ2ZV9k
b21haW5fdW5pdHlfbWFwKHN0cnVjdCBkb21haW4gKmQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgaXZy
c191bml0eV9tYXAgKm1hcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKQogewotICAgIHVuc2ln
bmVkIGxvbmcgbnBhZ2VzLCBpOwotICAgIHVuc2lnbmVkIGxvbmcgZ2ZuOwot
ICAgIHVuc2lnbmVkIGludCBmbGFncyA9ICEhaXI7Ci0gICAgdW5zaWduZWQg
aW50IGZsdXNoX2ZsYWdzID0gMDsKLSAgICBpbnQgcnQgPSAwOwotCi0gICAg
aWYgKCBpdyApCi0gICAgICAgIGZsYWdzIHw9IElPTU1VRl93cml0YWJsZTsK
LQotICAgIG5wYWdlcyA9IHJlZ2lvbl90b19wYWdlcyhwaHlzX2FkZHIsIHNp
emUpOwotICAgIGdmbiA9IHBoeXNfYWRkciA+PiBQQUdFX1NISUZUOwotICAg
IGZvciAoIGkgPSAwOyBpIDwgbnBhZ2VzOyBpKysgKQorICAgIGludCByYzsK
KworICAgIGlmICggZCA9PSBkb21faW8gKQorICAgICAgICByZXR1cm4gMDsK
KworICAgIGZvciAoIHJjID0gMDsgIXJjICYmIG1hcDsgbWFwID0gbWFwLT5u
ZXh0ICkKICAgICB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgZnJhbWUgPSBn
Zm4gKyBpOworICAgICAgICBwMm1fYWNjZXNzX3QgcDJtYSA9IHAybV9hY2Nl
c3NfbjsKKworICAgICAgICBpZiAoIG1hcC0+cmVhZCApCisgICAgICAgICAg
ICBwMm1hIHw9IHAybV9hY2Nlc3NfcjsKKyAgICAgICAgaWYgKCBtYXAtPndy
aXRlICkKKyAgICAgICAgICAgIHAybWEgfD0gcDJtX2FjY2Vzc193OwogCi0g
ICAgICAgIHJ0ID0gYW1kX2lvbW11X21hcF9wYWdlKGRvbWFpbiwgX2Rmbihm
cmFtZSksIF9tZm4oZnJhbWUpLCBmbGFncywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJmZsdXNoX2ZsYWdzKTsKLSAgICAgICAgaWYgKCBy
dCAhPSAwICkKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICByYyA9IGlv
bW11X2lkZW50aXR5X21hcHBpbmcoZCwgcDJtYSwgbWFwLT5hZGRyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRyICsg
bWFwLT5sZW5ndGggLSAxLCBmbGFnKTsKICAgICB9CiAKLSAgICAvKiBVc2Ug
d2hpbGUtYnJlYWsgdG8gYXZvaWQgY29tcGlsZXIgd2FybmluZyAqLwotICAg
IHdoaWxlICggZmx1c2hfZmxhZ3MgJiYKLSAgICAgICAgICAgIGFtZF9pb21t
dV9mbHVzaF9pb3RsYl9wYWdlcyhkb21haW4sIF9kZm4oZ2ZuKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBucGFnZXMsIGZs
dXNoX2ZsYWdzKSApCi0gICAgICAgIGJyZWFrOworICAgIHJldHVybiByYzsK
K30KKworaW50IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV91bm1h
cChzdHJ1Y3QgZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgaXZyc191bml0eV9tYXAg
Km1hcCkKK3sKKyAgICBpbnQgcmM7CisKKyAgICBpZiAoIGQgPT0gZG9tX2lv
ICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCByYyA9IDA7IG1h
cDsgbWFwID0gbWFwLT5uZXh0ICkKKyAgICB7CisgICAgICAgIGludCByZXQg
PSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQsIHAybV9hY2Nlc3NfeCwgbWFw
LT5hZGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtYXAtPmFkZHIgKyBtYXAtPmxlbmd0aCAtIDEsIDApOworCisgICAg
ICAgIGlmICggcmV0ICYmIHJldCAhPSAtRU5PRU5UICYmICFyYyApCisgICAg
ICAgICAgICByYyA9IHJldDsKKyAgICB9CiAKLSAgICByZXR1cm4gcnQ7Cisg
ICAgcmV0dXJuIHJjOwogfQogCiAvKiBTaGFyZSBwMm0gdGFibGUgd2l0aCBp
b21tdS4gKi8KLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3Bj
aV9hbWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9h
bWQvcGNpX2FtZF9pb21tdS5jCkBAIC0zMDcsNiArMzA3LDcgQEAgc3RhdGlj
IGludCByZWFzc2lnbl9kZXZpY2Uoc3RydWN0IGRvbWFpbgogICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11OwogICAgIGludCBiZGYsIHJjOwogICAgIHN0
cnVjdCBkb21haW5faW9tbXUgKnQgPSBkb21faW9tbXUodGFyZ2V0KTsKKyAg
ICBjb25zdCBzdHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9
IGdldF9pdnJzX21hcHBpbmdzKHBkZXYtPnNlZyk7CiAKICAgICBiZGYgPSBQ
Q0lfQkRGMihwZGV2LT5idXMsIHBkZXYtPmRldmZuKTsKICAgICBpb21tdSA9
IGZpbmRfaW9tbXVfZm9yX2RldmljZShwZGV2LT5zZWcsIGJkZik7CkBAIC0z
MjEsMTAgKzMyMiwyNCBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2RldmljZShz
dHJ1Y3QgZG9tYWluCiAKICAgICBhbWRfaW9tbXVfZGlzYWJsZV9kb21haW5f
ZGV2aWNlKHNvdXJjZSwgaW9tbXUsIGRldmZuLCBwZGV2KTsKIAotICAgIGlm
ICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4gKQorICAgIC8qCisgICAgICogSWYg
dGhlIGRldmljZSBiZWxvbmdzIHRvIHRoZSBoYXJkd2FyZSBkb21haW4sIGFu
ZCBpdCBoYXMgYSB1bml0eSBtYXBwaW5nLAorICAgICAqIGRvbid0IHJlbW92
ZSBpdCBmcm9tIHRoZSBoYXJkd2FyZSBkb21haW4sIGJlY2F1c2UgQklPUyBt
YXkgcmVmZXJlbmNlIHRoYXQKKyAgICAgKiBtYXBwaW5nLgorICAgICAqLwor
ICAgIGlmICggIWlzX2hhcmR3YXJlX2RvbWFpbihzb3VyY2UpICkKKyAgICB7
CisgICAgICAgIHJjID0gYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5
X3VubWFwKAorICAgICAgICAgICAgICAgICBzb3VyY2UsCisgICAgICAgICAg
ICAgICAgIGl2cnNfbWFwcGluZ3NbZ2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRl
di0+c2VnLCBiZGYpXS51bml0eV9tYXApOworICAgICAgICBpZiAoIHJjICkK
KyAgICAgICAgICAgIHJldHVybiByYzsKKyAgICB9CisKKyAgICBpZiAoIGRl
dmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRvbWFpbiAhPSBkb21faW8g
KQogICAgIHsKLSAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21haW5fbGlz
dCwgJnRhcmdldC0+YXJjaC5wZGV2X2xpc3QpOwotICAgICAgICBwZGV2LT5k
b21haW4gPSB0YXJnZXQ7CisgICAgICAgIGxpc3RfbW92ZSgmcGRldi0+ZG9t
YWluX2xpc3QsICZkb21faW8tPmFyY2gucGRldl9saXN0KTsKKyAgICAgICAg
cGRldi0+ZG9tYWluID0gZG9tX2lvOwogICAgIH0KIAogICAgIHJjID0gYWxs
b2NhdGVfZG9tYWluX3Jlc291cmNlcyh0KTsKQEAgLTMzNiw2ICszNTEsMTIg
QEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3RydWN0IGRvbWFpbgog
ICAgICAgICAgICAgICAgICAgICBwZGV2LT5zZWcsIHBkZXYtPmJ1cywgUENJ
X1NMT1QoZGV2Zm4pLCBQQ0lfRlVOQyhkZXZmbiksCiAgICAgICAgICAgICAg
ICAgICAgIHNvdXJjZS0+ZG9tYWluX2lkLCB0YXJnZXQtPmRvbWFpbl9pZCk7
CiAKKyAgICBpZiAoIGRldmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRv
bWFpbiAhPSB0YXJnZXQgKQorICAgIHsKKyAgICAgICAgbGlzdF9tb3ZlKCZw
ZGV2LT5kb21haW5fbGlzdCwgJnRhcmdldC0+YXJjaC5wZGV2X2xpc3QpOwor
ICAgICAgICBwZGV2LT5kb21haW4gPSB0YXJnZXQ7CisgICAgfQorCiAgICAg
cmV0dXJuIDA7CiB9CiAKQEAgLTM0NiwyMCArMzY3LDI4IEBAIHN0YXRpYyBp
bnQgYW1kX2lvbW11X2Fzc2lnbl9kZXZpY2Uoc3RydWMKICAgICBzdHJ1Y3Qg
aXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBp
bmdzKHBkZXYtPnNlZyk7CiAgICAgaW50IGJkZiA9IFBDSV9CREYyKHBkZXYt
PmJ1cywgZGV2Zm4pOwogICAgIGludCByZXFfaWQgPSBnZXRfZG1hX3JlcXVl
c3Rvcl9pZChwZGV2LT5zZWcsIGJkZik7Ci0gICAgY29uc3Qgc3RydWN0IGl2
cnNfdW5pdHlfbWFwICp1bml0eV9tYXA7CisgICAgaW50IHJjID0gYW1kX2lv
bW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAgICAgICAgICAg
ICAgZCwgaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcCwgZmxhZyk7
CisKKyAgICBpZiAoICFyYyApCisgICAgICAgIHJjID0gcmVhc3NpZ25fZGV2
aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2Zm4sIHBkZXYpOwogCi0gICAgZm9y
ICggdW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21h
cDsgdW5pdHlfbWFwOwotICAgICAgICAgIHVuaXR5X21hcCA9IHVuaXR5X21h
cC0+bmV4dCApCisgICAgaWYgKCByYyAmJiAhaXNfaGFyZHdhcmVfZG9tYWlu
KGQpICkKICAgICB7Ci0gICAgICAgIGludCByYyA9IGFtZF9pb21tdV9yZXNl
cnZlX2RvbWFpbl91bml0eV9tYXAoCi0gICAgICAgICAgICAgICAgICAgICBk
LCB1bml0eV9tYXAtPmFkZHIsIHVuaXR5X21hcC0+bGVuZ3RoLAotICAgICAg
ICAgICAgICAgICAgICAgdW5pdHlfbWFwLT53cml0ZSwgdW5pdHlfbWFwLT5y
ZWFkKTsKKyAgICAgICAgaW50IHJldCA9IGFtZF9pb21tdV9yZXNlcnZlX2Rv
bWFpbl91bml0eV91bm1hcCgKKyAgICAgICAgICAgICAgICAgICAgICBkLCBp
dnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwKTsKIAotICAgICAgICBp
ZiAoIHJjICkKLSAgICAgICAgICAgIHJldHVybiByYzsKKyAgICAgICAgaWYg
KCByZXQgKQorICAgICAgICB7CisgICAgICAgICAgICBwcmludGsoWEVOTE9H
X0VSUiAiQU1ELVZpOiAiCisgICAgICAgICAgICAgICAgICAgInVuaXR5LXVu
bWFwIGZvciAlcGQvJTA0eDolMDJ4OiUwMnguJXUgZmFpbGVkICglZClcbiIs
CisgICAgICAgICAgICAgICAgICAgZCwgcGRldi0+c2VnLCBwZGV2LT5idXMs
CisgICAgICAgICAgICAgICAgICAgUENJX1NMT1QoZGV2Zm4pLCBQQ0lfRlVO
QyhkZXZmbiksIHJldCk7CisgICAgICAgICAgICBkb21haW5fY3Jhc2goZCk7
CisgICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gcmVhc3NpZ25fZGV2
aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2Zm4sIHBkZXYpOworICAgIHJldHVy
biByYzsKIH0KIAogc3RhdGljIHZvaWQgZGVhbGxvY2F0ZV9uZXh0X3BhZ2Vf
dGFibGUoc3RydWN0IHBhZ2VfaW5mbyAqcGcsIGludCBsZXZlbCkKQEAgLTQy
NSw2ICs0NTQsNyBAQCBzdGF0aWMgdm9pZCBkZWFsbG9jYXRlX2lvbW11X3Bh
Z2VfdGFibGVzCiAKIHN0YXRpYyB2b2lkIGFtZF9pb21tdV9kb21haW5fZGVz
dHJveShzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIGlvbW11X2lkZW50aXR5
X21hcF90ZWFyZG93bihkKTsKICAgICBkZWFsbG9jYXRlX2lvbW11X3BhZ2Vf
dGFibGVzKGQpOwogICAgIGFtZF9pb21tdV9mbHVzaF9hbGxfcGFnZXMoZCk7
CiB9Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9hbWQtaW9t
bXUtcHJvdG8uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9zdm0v
YW1kLWlvbW11LXByb3RvLmgKQEAgLTYyLDggKzYyLDEwIEBAIGludCBfX211
c3RfY2hlY2sgYW1kX2lvbW11X3VubWFwX3BhZ2Uoc3QKIHVpbnQ2NF90IGFt
ZF9pb21tdV9nZXRfYWRkcmVzc19mcm9tX3B0ZSh2b2lkICplbnRyeSk7CiBp
bnQgX19tdXN0X2NoZWNrIGFtZF9pb21tdV9hbGxvY19yb290KHN0cnVjdCBk
b21haW5faW9tbXUgKmhkKTsKIGludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21h
aW5fdW5pdHlfbWFwKHN0cnVjdCBkb21haW4gKmRvbWFpbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgcGh5c19h
ZGRyLCB1bnNpZ25lZCBsb25nIHNpemUsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgaXcsIGludCBpcik7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qg
aXZyc191bml0eV9tYXAgKm1hcCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKTsKK2ludCBhbWRf
aW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAoc3RydWN0IGRvbWFp
biAqZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgc3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXApOwogaW50IF9f
bXVzdF9jaGVjayBhbWRfaW9tbXVfZmx1c2hfaW90bGJfcGFnZXMoc3RydWN0
IGRvbWFpbiAqZCwgZGZuX3QgZGZuLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHBhZ2VfY291
bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBpbnQgZmx1c2hfZmxhZ3MpOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtOTks
MTIgKzk5LDggQEAgc3RhdGljIHN0cnVjdCBhbWRfaW9tbXUgKiBfX2luaXQg
ZmluZF9pbwogfQogCiBzdGF0aWMgaW50IF9faW5pdCByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZSgKLSAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21t
dSwgdWludDY0X3QgYmFzZSwgdWludDY0X3QgbGltaXQsCi0gICAgYm9vbCBh
bGwsIGJvb2wgaXcsIGJvb2wgaXIpCisgICAgc3RydWN0IGFtZF9pb21tdSAq
aW9tbXUsIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwgYm9vbCBhbGwp
CiB7Ci0gICAgaWYgKCAhaXIgfHwgIWl3ICkKLSAgICAgICAgcmV0dXJuIC1F
UEVSTTsKLQogICAgIC8qIG5lZWQgdG8gZXh0ZW5kIGV4Y2x1c2lvbiByYW5n
ZT8gKi8KICAgICBpZiAoIGlvbW11LT5leGNsdXNpb25fZW5hYmxlICkKICAg
ICB7CkBAIC0xMzMsMTQgKzEyOSwxOCBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZXNlcnZlX3VuaXR5X21hcF9mb3JfCiB7CiAgICAgc3RydWN0IGl2cnNfbWFw
cGluZ3MgKml2cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhzZWcp
OwogICAgIHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwID0gaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcDsKKyAgICBpbnQgcGFnaW5nX21v
ZGUgPSBhbWRfaW9tbXVfZ2V0X3BhZ2luZ19tb2RlKFBGTl9VUChiYXNlICsg
bGVuZ3RoKSk7CisKKyAgICBpZiAoIHBhZ2luZ19tb2RlIDwgMCApCisgICAg
ICAgIHJldHVybiBwYWdpbmdfbW9kZTsKIAogICAgIC8qIENoZWNrIGZvciBv
dmVybGFwcy4gKi8KICAgICBmb3IgKCA7IHVuaXR5X21hcDsgdW5pdHlfbWFw
ID0gdW5pdHlfbWFwLT5uZXh0ICkKICAgICB7CiAgICAgICAgIC8qCiAgICAg
ICAgICAqIEV4YWN0IG1hdGNoZXMgYXJlIG9rYXkuIFRoaXMgY2FuIGluIHBh
cnRpY3VsYXIgaGFwcGVuIHdoZW4KLSAgICAgICAgICogcmVnaXN0ZXJfZXhj
bHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3aWNlIGZv
ciB0aGUKLSAgICAgICAgICogc2FtZSAocyxiLGQsZikuCisgICAgICAgICAq
IHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2UoKSBjYWxscyBoZXJlIHR3aWNl
IGZvciB0aGUgc2FtZQorICAgICAgICAgKiAocyxiLGQsZikuCiAgICAgICAg
ICAqLwogICAgICAgICBpZiAoIGJhc2UgPT0gdW5pdHlfbWFwLT5hZGRyICYm
IGxlbmd0aCA9PSB1bml0eV9tYXAtPmxlbmd0aCAmJgogICAgICAgICAgICAg
IGlyID09IHVuaXR5X21hcC0+cmVhZCAmJiBpdyA9PSB1bml0eV9tYXAtPndy
aXRlICkKQEAgLTE2OCw1NSArMTY4LDUyIEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl8KICAgICB1bml0eV9tYXAtPm5leHQg
PSBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwOwogICAgIGl2cnNfbWFw
cGluZ3NbYmRmXS51bml0eV9tYXAgPSB1bml0eV9tYXA7CiAKKyAgICBpZiAo
IHBhZ2luZ19tb2RlID4gYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSApCisg
ICAgICAgIGFtZF9pb21tdV9taW5fcGFnaW5nX21vZGUgPSBwYWdpbmdfbW9k
ZTsKKwogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IF9faW5pdCBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2FsbF9kZXZpY2VzKAotICAg
IHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTgg
aXcsIHU4IGlyKQorc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfcmFuZ2Vf
Zm9yX2FsbF9kZXZpY2VzKAorICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBs
aW1pdCwgYm9vbCBpdywgYm9vbCBpciwgYm9vbCBleGNsdXNpb24pCiB7CiAg
ICAgaW50IHNlZyA9IDA7IC8qIFhYWCAqLwotICAgIHVuc2lnbmVkIGxvbmcg
cmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdTsKLSAgICB1bnNpZ25lZCBpbnQgYmRmOwogICAgIGlu
dCByYyA9IDA7CiAKICAgICAvKiBpcyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5n
ZSBpbnNpZGUgb2YgSU9NTVUgdmlydHVhbCBhZGRyZXNzIHNwYWNlPyAqLwog
ICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8g
YmUgcGFnZS1hbGlnbmVkICovCi0gICAgcmFuZ2VfdG9wID0gbGltaXQgKyBQ
QUdFX1NJWkU7Ci0gICAgaW9tbXVfdG9wID0gbWF4X3BhZ2UgKiBQQUdFX1NJ
WkU7Ci0gICAgaWYgKCBiYXNlIDwgaW9tbXVfdG9wICkKLSAgICB7Ci0gICAg
ICAgIGlmICggcmFuZ2VfdG9wID4gaW9tbXVfdG9wICkKLSAgICAgICAgICAg
IHJhbmdlX3RvcCA9IGlvbW11X3RvcDsKLSAgICAgICAgbGVuZ3RoID0gcmFu
Z2VfdG9wIC0gYmFzZTsKLSAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHkt
bWFwcGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAqLwotICAgICAgICAv
KiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNp
b24gcmFuZ2UgKi8KLSAgICAgICAgZm9yICggYmRmID0gMDsgIXJjICYmIGJk
ZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAgICAgICAgIHJj
ID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFz
ZSwgbGVuZ3RoLCBpdywgaXIpOwotICAgICAgICAvKiBwdXNoICdiYXNlJyBq
dXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCi0gICAg
ICAgIGJhc2UgPSBpb21tdV90b3A7Ci0gICAgfQotICAgIC8qIHJlZ2lzdGVy
IElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICgg
IXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCApCisgICAgaWYgKCBleGNsdXNp
b24gKQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBpb21t
dSApCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21t
dV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVl
IC8qIGFsbCAqLywgaXcsIGlyKTsKLSAgICAgICAgICAgIGlmICggcmMgKQot
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgaW50IHJldCA9
IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBs
aW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0cnVlIC8qIGFsbCAqLyk7CisKKyAgICAgICAgICAg
IGlmICggcmV0ICYmICFyYyApCisgICAgICAgICAgICAgICAgcmMgPSByZXQ7
CiAgICAgICAgIH0KICAgICB9CiAKKyAgICBpZiAoICFleGNsdXNpb24gfHwg
cmMgKQorICAgIHsKKyAgICAgICAgcGFkZHJfdCBsZW5ndGggPSBsaW1pdCAr
IFBBR0VfU0laRSAtIGJhc2U7CisgICAgICAgIHVuc2lnbmVkIGludCBiZGY7
CisKKyAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHktbWFwcGVkIHBhZ2Ug
ZW50cmllcyBmb3IgZGV2aWNlcyAqLworICAgICAgICBmb3IgKCBiZGYgPSBy
YyA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyAp
CisgICAgICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZp
Y2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsKKyAgICB9CisK
ICAgICByZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgX19pbml0IHJlZ2lz
dGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfZGV2aWNlKAotICAgIHUxNiBiZGYs
IHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTgg
aXcsIHU4IGlyKQorc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfcmFuZ2Vf
Zm9yX2RldmljZSgKKyAgICB1bnNpZ25lZCBpbnQgYmRmLCBwYWRkcl90IGJh
c2UsIHBhZGRyX3QgbGltaXQsCisgICAgYm9vbCBpdywgYm9vbCBpciwgYm9v
bCBleGNsdXNpb24pCiB7CiAgICAgaW50IHNlZyA9IDA7IC8qIFhYWCAqLwog
ICAgIHN0cnVjdCBpdnJzX21hcHBpbmdzICppdnJzX21hcHBpbmdzID0gZ2V0
X2l2cnNfbWFwcGluZ3Moc2VnKTsKLSAgICB1bnNpZ25lZCBsb25nIHJhbmdl
X3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAgc3RydWN0IGFtZF9pb21t
dSAqaW9tbXU7CiAgICAgdTE2IHJlcTsKICAgICBpbnQgcmMgPSAwOwpAQCAt
MjMwLDI3ICsyMjcsMTkgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJf
ZXhjbHVzaW9uX3JhbgogICAgIHJlcSA9IGl2cnNfbWFwcGluZ3NbYmRmXS5k
dGVfcmVxdWVzdG9yX2lkOwogCiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJh
bWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICBy
YW5nZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsKLSAgICBpb21tdV90b3Ag
PSBtYXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21t
dV90b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21t
dV90b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwot
ICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOworICAgIGlmICgg
ZXhjbHVzaW9uICkKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgLyogYWxsICov
KTsKKyAgICBpZiAoICFleGNsdXNpb24gfHwgcmMgKQorICAgIHsKKyAgICAg
ICAgcGFkZHJfdCBsZW5ndGggPSBsaW1pdCArIFBBR0VfU0laRSAtIGJhc2U7
CisKICAgICAgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2UgKi8KLSAgICAgICAgLyogbm90ZTogdGhlc2UgZW50
cmllcyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCiAgICAg
ICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJk
ZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpID86CiAgICAgICAgICAgICAgcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShzZWcsIHJlcSwgYmFzZSwgbGVu
Z3RoLCBpdywgaXIpOwotCi0gICAgICAgIC8qIHB1c2ggJ2Jhc2UnIGp1c3Qg
b3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKi8KLSAgICAgICAg
YmFzZSA9IGlvbW11X3RvcDsKICAgICB9Ci0KLSAgICAvKiByZWdpc3RlciBJ
T01NVSBleGNsdXNpb24gcmFuZ2Ugc2V0dGluZ3MgZm9yIGRldmljZSAqLwot
ICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCAgKQorICAgIGVs
c2UKICAgICB7Ci0gICAgICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlIC8qIGFsbCAqLywg
aXcsIGlyKTsKICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmR0ZV9hbGxv
d19leGNsdXNpb24gPSBJT01NVV9DT05UUk9MX0VOQUJMRUQ7CiAgICAgICAg
IGl2cnNfbWFwcGluZ3NbcmVxXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gSU9N
TVVfQ09OVFJPTF9FTkFCTEVEOwogICAgIH0KQEAgLTI1OCw1MyArMjQ3LDQy
IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4K
ICAgICByZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgX19pbml0IHJlZ2lz
dGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfaW9tbXVfZGV2aWNlcygKLSAgICBz
dHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25lZCBsb25nIGJh
c2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3LCB1OCBpcikKK3N0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21tdV9kZXZpY2Vz
KAorICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCBwYWRkcl90IGJhc2Us
IHBhZGRyX3QgbGltaXQsCisgICAgYm9vbCBpdywgYm9vbCBpciwgYm9vbCBl
eGNsdXNpb24pCiB7Ci0gICAgdW5zaWduZWQgbG9uZyByYW5nZV90b3AsIGlv
bW11X3RvcCwgbGVuZ3RoOworICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1l
dGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCisgICAgcGFk
ZHJfdCBsZW5ndGggPSBsaW1pdCArIFBBR0VfU0laRSAtIGJhc2U7CiAgICAg
dW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOwotICAgIGludCByYyA9
IDA7CisgICAgaW50IHJjOwogCi0gICAgLyogaXMgcGFydCBvZiBleGNsdXNp
b24gcmFuZ2UgaW5zaWRlIG9mIElPTU1VIHZpcnR1YWwgYWRkcmVzcyBzcGFj
ZT8gKi8KLSAgICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1
bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwotICAgIHJhbmdlX3RvcCA9IGxp
bWl0ICsgUEFHRV9TSVpFOwotICAgIGlvbW11X3RvcCA9IG1heF9wYWdlICog
UEFHRV9TSVpFOwotICAgIGlmICggYmFzZSA8IGlvbW11X3RvcCApCi0gICAg
ewotICAgICAgICBpZiAoIHJhbmdlX3RvcCA+IGlvbW11X3RvcCApCi0gICAg
ICAgICAgICByYW5nZV90b3AgPSBpb21tdV90b3A7Ci0gICAgICAgIGxlbmd0
aCA9IHJhbmdlX3RvcCAtIGJhc2U7Ci0gICAgICAgIC8qIHJlc2VydmUgci93
IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMgKi8KLSAg
ICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUg
ZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9IDA7ICFy
YyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGlmICggaW9tbXUgPT0gZmluZF9pb21tdV9mb3Jf
ZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIHJlcSA9IGdldF9pdnJzX21hcHBpbmdzKGlvbW11LT5z
ZWcpW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKLSAgICAgICAgICAgICAgICBy
YyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywg
YmRmLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcikgPzoKLSAgICAgICAg
ICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcik7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBwdXNoICdi
YXNlJyBqdXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICov
Ci0gICAgICAgIGJhc2UgPSBpb21tdV90b3A7CisgICAgaWYgKCBleGNsdXNp
b24gKQorICAgIHsKKyAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsIHRydWUgLyogYWxsICov
KTsKKyAgICAgICAgaWYgKCAhcmMgKQorICAgICAgICAgICAgcmV0dXJuIDA7
CiAgICAgfQogCi0gICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJh
bmdlIHNldHRpbmdzICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9t
bXVfdG9wICkKLSAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lv
bl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8sIGl3
LCBpcik7CisgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2VzICovCisgICAgZm9yICggYmRmID0gcmMgPSAwOyAh
cmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysgKQorICAgIHsK
KyAgICAgICAgaWYgKCBpb21tdSAhPSBmaW5kX2lvbW11X2Zvcl9kZXZpY2Uo
aW9tbXUtPnNlZywgYmRmKSApCisgICAgICAgICAgICBjb250aW51ZTsKKwor
ICAgICAgICByZXEgPSBnZXRfaXZyc19tYXBwaW5ncyhpb21tdS0+c2VnKVti
ZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7CisgICAgICAgIHJjID0gcmVzZXJ2ZV91
bml0eV9tYXBfZm9yX2RldmljZShpb21tdS0+c2VnLCBiZGYsIGJhc2UsIGxl
bmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGl3LCBpcikgPzoKKyAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21h
cF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcs
IGlyKTsKKyAgICB9CiAKICAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyBp
bnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdCgKICAgICBjb25z
dCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaywKLSAgICB1
bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3
LCB1OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGltaXQsIGJv
b2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAgIHUxNiBi
ZGY7CiAKQEAgLTMxNSwxMiArMjkzLDEyIEBAIHN0YXRpYyBpbnQgX19pbml0
IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGUKICAgICAgICAgcmV0dXJuIC1FTk9E
RVY7CiAgICAgfQogCi0gICAgcmV0dXJuIHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW5nZV9mb3JfZGV2aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpcik7Cisg
ICAgcmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2UoYmRmLCBiYXNl
LCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQogCiBzdGF0aWMgaW50
IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9yYW5nZSgKICAgICBjb25zdCBz
dHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaywKLSAgICB1bnNp
Z25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3LCB1
OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGltaXQsIGJvb2wg
aXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAgIHVuc2lnbmVk
IGludCBmaXJzdF9iZGYsIGxhc3RfYmRmLCBiZGY7CiAgICAgaW50IGVycm9y
OwpAQCAtMzQyLDE1ICszMjAsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcGFy
c2VfaXZtZF9kZXZpY2VfcmFuZwogICAgIH0KIAogICAgIGZvciAoIGJkZiA9
IGZpcnN0X2JkZiwgZXJyb3IgPSAwOyAoYmRmIDw9IGxhc3RfYmRmKSAmJiAh
ZXJyb3I7IGJkZisrICkKLSAgICAgICAgZXJyb3IgPSByZWdpc3Rlcl9leGNs
dXNpb25fcmFuZ2VfZm9yX2RldmljZSgKLSAgICAgICAgICAgIGJkZiwgYmFz
ZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIGVycm9yID0gcmVnaXN0ZXJf
cmFuZ2VfZm9yX2RldmljZSgKKyAgICAgICAgICAgIGJkZiwgYmFzZSwgbGlt
aXQsIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIHJldHVybiBlcnJvcjsK
IH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9kZXZpY2VfaW9t
bXUoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19tZW1vcnkgKml2bWRf
YmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25n
IGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJfdCBiYXNlLCBwYWRk
cl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikK
IHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCiAgICAgc3RydWN0IGFt
ZF9pb21tdSAqaW9tbXU7CkBAIC0zNjUsMTQgKzM0MywxNCBAQCBzdGF0aWMg
aW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9pb21tCiAgICAgICAgIHJl
dHVybiAtRU5PREVWOwogICAgIH0KIAotICAgIHJldHVybiByZWdpc3Rlcl9l
eGNsdXNpb25fcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCi0gICAgICAgIGlv
bW11LCBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICByZXR1cm4gcmVnaXN0
ZXJfcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCisgICAgICAgIGlvbW11LCBi
YXNlLCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQogCiBzdGF0aWMg
aW50IF9faW5pdCBwYXJzZV9pdm1kX2Jsb2NrKGNvbnN0IHN0cnVjdCBhY3Bp
X2l2cnNfbWVtb3J5ICppdm1kX2Jsb2NrKQogewogICAgIHVuc2lnbmVkIGxv
bmcgc3RhcnRfYWRkciwgbWVtX2xlbmd0aCwgYmFzZSwgbGltaXQ7Ci0gICAg
dTggaXcsIGlyOworICAgIGJvb2wgaXcgPSB0cnVlLCBpciA9IHRydWUsIGV4
Y2x1c2lvbiA9IGZhbHNlOwogCiAgICAgaWYgKCBpdm1kX2Jsb2NrLT5oZWFk
ZXIubGVuZ3RoIDwgc2l6ZW9mKCppdm1kX2Jsb2NrKSApCiAgICAgewpAQCAt
Mzg5LDEzICszNjcsMTEgQEAgc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZt
ZF9ibG9jayhjb25zdAogICAgICAgICAgICAgICAgICAgICBpdm1kX2Jsb2Nr
LT5oZWFkZXIudHlwZSwgc3RhcnRfYWRkciwgbWVtX2xlbmd0aCk7CiAKICAg
ICBpZiAoIGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElfSVZNRF9F
WENMVVNJT05fUkFOR0UgKQotICAgICAgICBpdyA9IGlyID0gSU9NTVVfQ09O
VFJPTF9FTkFCTEVEOworICAgICAgICBleGNsdXNpb24gPSB0cnVlOwogICAg
IGVsc2UgaWYgKCBpdm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lW
TURfVU5JVFkgKQogICAgIHsKLSAgICAgICAgaXcgPSBpdm1kX2Jsb2NrLT5o
ZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfUkVBRCA/Ci0gICAgICAgICAgICBJ
T01NVV9DT05UUk9MX0VOQUJMRUQgOiBJT01NVV9DT05UUk9MX0RJU0FCTEVE
OwotICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFD
UElfSVZNRF9XUklURSA/Ci0gICAgICAgICAgICBJT01NVV9DT05UUk9MX0VO
QUJMRUQgOiBJT01NVV9DT05UUk9MX0RJU0FCTEVEOworICAgICAgICBpdyA9
IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElfSVZNRF9SRUFEOwor
ICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElf
SVZNRF9XUklURTsKICAgICB9CiAgICAgZWxzZQogICAgIHsKQEAgLTQwNiwy
MCArMzgyLDIwIEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfYmxv
Y2soY29uc3QKICAgICBzd2l0Y2goIGl2bWRfYmxvY2stPmhlYWRlci50eXBl
ICkKICAgICB7CiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9NRU1PUllfQUxM
OgotICAgICAgICByZXR1cm4gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zv
cl9hbGxfZGV2aWNlcygKLSAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywg
aXIpOworICAgICAgICByZXR1cm4gcmVnaXN0ZXJfcmFuZ2VfZm9yX2FsbF9k
ZXZpY2VzKAorICAgICAgICAgICAgYmFzZSwgbGltaXQsIGl3LCBpciwgZXhj
bHVzaW9uKTsKIAogICAgIGNhc2UgQUNQSV9JVlJTX1RZUEVfTUVNT1JZX09O
RToKLSAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdChp
dm1kX2Jsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgICAgICByZXR1cm4g
cGFyc2VfaXZtZF9kZXZpY2Vfc2VsZWN0KGl2bWRfYmxvY2ssIGJhc2UsIGxp
bWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGNhc2UgQUNQSV9JVlJTX1RZ
UEVfTUVNT1JZX1JBTkdFOgotICAgICAgICByZXR1cm4gcGFyc2VfaXZtZF9k
ZXZpY2VfcmFuZ2UoaXZtZF9ibG9jaywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAg
ICAgICByZXR1cm4gcGFyc2VfaXZtZF9kZXZpY2VfcmFuZ2UoaXZtZF9ibG9j
aywgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBjYXNlIEFD
UElfSVZSU19UWVBFX01FTU9SWV9JT01NVToKLSAgICAgICAgcmV0dXJuIHBh
cnNlX2l2bWRfZGV2aWNlX2lvbW11KGl2bWRfYmxvY2ssCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1pdCwgaXcs
IGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX2lvbW11
KGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaXcsIGlyLCBleGNsdXNpb24pOwogCiAg
ICAgZGVmYXVsdDoKICAgICAgICAgQU1EX0lPTU1VX0RFQlVHKCJJVk1EIEVy
cm9yOiBJbnZhbGlkIEJsb2NrIFR5cGUhXG4iKTsKLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4v
ZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0y
MjIsNiArMjIyLDggQEAgc3RhdGljIGludCBfX211c3RfY2hlY2sgYWxsb2Nh
dGVfZG9tYWluXwogICAgIHJldHVybiByYzsKIH0KIAoraW50IF9fcmVhZF9t
b3N0bHkgYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSA9IDE7CisKIHN0YXRp
YyBpbnQgYW1kX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4gKmQp
CiB7CiAgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUo
ZCk7CkBAIC0yMzMsMTEgKzIzNSwxMyBAQCBzdGF0aWMgaW50IGFtZF9pb21t
dV9kb21haW5faW5pdChzdHJ1Y3QKICAgICAgKiAtIEhWTSBjb3VsZCBpbiBw
cmluY2lwbGUgdXNlIDMgb3IgNCBkZXBlbmRpbmcgb24gaG93IG11Y2ggZ3Vl
c3QKICAgICAgKiAgIHBoeXNpY2FsIGFkZHJlc3Mgc3BhY2Ugd2UgZ2l2ZSBp
dCwgYnV0IHRoaXMgaXNuJ3Qga25vd24geWV0IHNvIHVzZSA0CiAgICAgICog
ICB1bmlsYXRlcmFsbHkuCisgICAgICogLSBVbml0eSBtYXBzIG1heSByZXF1
aXJlIGFuIGV2ZW4gaGlnaGVyIG51bWJlci4KICAgICAgKi8KLSAgICBoZC0+
YXJjaC5wYWdpbmdfbW9kZSA9IGFtZF9pb21tdV9nZXRfcGFnaW5nX21vZGUo
Ci0gICAgICAgIGlzX2h2bV9kb21haW4oZCkKLSAgICAgICAgPyAxdWwgPDwg
KERFRkFVTFRfRE9NQUlOX0FERFJFU1NfV0lEVEggLSBQQUdFX1NISUZUKQot
ICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91bmQoKSArIDEpOworICAgIGhk
LT5hcmNoLnBhZ2luZ19tb2RlID0gbWF4KGFtZF9pb21tdV9nZXRfcGFnaW5n
X21vZGUoCisgICAgICAgICAgICBpc19odm1fZG9tYWluKGQpCisgICAgICAg
ICAgICA/IDF1bCA8PCAoREVGQVVMVF9ET01BSU5fQUREUkVTU19XSURUSCAt
IFBBR0VfU0hJRlQpCisgICAgICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91
bmQoKSArIDEpLAorICAgICAgICBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2Rl
KTsKIAogICAgIHJldHVybiAwOwogfQotLS0gYS94ZW4vaW5jbHVkZS9hc20t
eDg2L2h2bS9zdm0vYW1kLWlvbW11LXByb3RvLmgKKysrIGIveGVuL2luY2x1
ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21tdS1wcm90by5oCkBAIC0xMzIs
NiArMTMyLDggQEAgZXh0ZXJuIHN0cnVjdCBocGV0X3NiZGYgewogICAgIH0g
aW5pdDsKIH0gaHBldF9zYmRmOwogCitleHRlcm4gaW50IGFtZF9pb21tdV9t
aW5fcGFnaW5nX21vZGU7CisKIGV4dGVybiB2b2lkICpzaGFyZWRfaW50cmVt
YXBfdGFibGU7CiBleHRlcm4gdW5zaWduZWQgbG9uZyAqc2hhcmVkX2ludHJl
bWFwX2ludXNlOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtODA2LDcgKzgw
Niw3IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRl
cik7IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2Vu
dHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5V
TEwpOwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFw
Mm1faXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAg
ICAgICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3No
YXJlZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4o
bWZuK2ksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAgfQogICAgIH0K
QEAgLTkxNywxMyArOTE3LDEzIEBAIGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5
KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAgICAgICAgICAg
IEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAgICB9Ci0gICAg
ICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNfZm9yZWlnbihv
dCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90KSApCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRuJ3QgYmUgdW5t
YXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAqLworICAgICAg
ICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWdu
IHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwog
ICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAgICAgICAgCi0g
ICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAgICAgIHJldHVy
biAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoIHAybV9p
c19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAgICAgICAgewpA
QCAtMTAxOCw4ICsxMDE4LDcgQEAgaW50IHAybV9jaGFuZ2VfdHlwZV9vbmUo
c3RydWN0IGRvbWFpbiAqZAogICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0g
PSBwMm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgaW50IHJjOwogCi0gICAgQlVH
X09OKHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lzX2dyYW50KG50KSk7Ci0g
ICAgQlVHX09OKHAybV9pc19mb3JlaWduKG90KSB8fCBwMm1faXNfZm9yZWln
bihudCkpOworICAgIEJVR19PTihwMm1faXNfc3BlY2lhbChvdCkgfHwgcDJt
X2lzX3NwZWNpYWwobnQpKTsKIAogICAgIGdmbl9sb2NrKHAybSwgZ2ZuLCAw
KTsKIApAQCAtMTI3MiwxMSArMTI3MSwxMSBAQCBzdGF0aWMgaW50IHNldF90
eXBlZF9wMm1fZW50cnkoc3RydWN0IGRvCiAgICAgICAgIGdmbl91bmxvY2so
cDJtLCBnZm4sIG9yZGVyKTsKICAgICAgICAgcmV0dXJuIGN1cl9vcmRlciAr
IDE7CiAgICAgfQotICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1f
aXNfZm9yZWlnbihvdCkgKQorICAgIGlmICggcDJtX2lzX3NwZWNpYWwob3Qp
ICkKICAgICB7CiAgICAgICAgIGdmbl91bmxvY2socDJtLCBnZm4sIG9yZGVy
KTsKICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwotICAgICAgICByZXR1cm4g
LUVOT0VOVDsKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKICAgICB9CiAgICAg
ZWxzZSBpZiAoIHAybV9pc19yYW0ob3QpICkKICAgICB7Ci0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4
Ni9wMm0uaApAQCAtMTQxLDYgKzE0MSwxMCBAQCB0eXBlZGVmIHVuc2lnbmVk
IGludCBwMm1fcXVlcnlfdDsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8IHAybV90b19tYXNrKHAybV9yYW1fbG9nZGlydHkpICkKICNkZWZpbmUg
UDJNX1NIQVJFRF9UWVBFUyAgIChwMm1fdG9fbWFzayhwMm1fcmFtX3NoYXJl
ZCkpCiAKKy8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQgdXAgdmlhIHNw
ZWNpYWwgYWNjZXNzb3JzLiAqLworI2RlZmluZSBQMk1fU1BFQ0lBTF9UWVBF
UyAoUDJNX0dSQU5UX1RZUEVTIHwgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkKKwogLyogVmFs
aWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQgd2l0aCBhICh2
YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9NRk5fVFlQRVMg
KFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhwMm1fbW1pb19k
aXJlY3QpIFwKQEAgLTE2OSw2ICsxNzMsNyBAQCB0eXBlZGVmIHVuc2lnbmVk
IGludCBwMm1fcXVlcnlfdDsKICNkZWZpbmUgcDJtX2lzX3BhZ2VkKF90KSAg
ICAocDJtX3RvX21hc2soX3QpICYgUDJNX1BBR0VEX1RZUEVTKQogI2RlZmlu
ZSBwMm1faXNfc2hhcmFibGUoX3QpIChwMm1fdG9fbWFzayhfdCkgJiBQMk1f
U0hBUkFCTEVfVFlQRVMpCiAjZGVmaW5lIHAybV9pc19zaGFyZWQoX3QpICAg
KHAybV90b19tYXNrKF90KSAmIFAyTV9TSEFSRURfVFlQRVMpCisjZGVmaW5l
IHAybV9pc19zcGVjaWFsKF90KSAgKHAybV90b19tYXNrKF90KSAmIFAyTV9T
UEVDSUFMX1RZUEVTKQogI2RlZmluZSBwMm1faXNfYnJva2VuKF90KSAgIChw
Mm1fdG9fbWFzayhfdCkgJiBQMk1fQlJPS0VOX1RZUEVTKQogI2RlZmluZSBw
Mm1faXNfZm9yZWlnbihfdCkgIChwMm1fdG9fbWFzayhfdCkgJiBwMm1fdG9f
bWFzayhwMm1fbWFwX2ZvcmVpZ24pKQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.12-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.12-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tLmMK
KysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ4MDksNyArNDgwOSw5IEBA
IGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogCiAgICAgLyogUmVt
b3ZlIHByZXZpb3VzbHkgbWFwcGVkIHBhZ2UgaWYgaXQgd2FzIHByZXNlbnQu
ICovCiAgICAgcHJldl9tZm4gPSBtZm5feChnZXRfZ2ZuKGQsIGdmbl94KGdw
Zm4pLCAmcDJtdCkpOwotICAgIGlmICggbWZuX3ZhbGlkKF9tZm4ocHJldl9t
Zm4pKSApCisgICAgaWYgKCBwMm10ID09IHAybV9tbWlvX2RpcmVjdCApCisg
ICAgICAgIHJjID0gLUVQRVJNOworICAgIGVsc2UgaWYgKCBtZm5fdmFsaWQo
X21mbihwcmV2X21mbikpICkKICAgICB7CiAgICAgICAgIGlmICggaXNfeGVu
X2hlYXBfbWZuKHByZXZfbWZuKSApCiAgICAgICAgICAgICAvKiBYZW4gaGVh
cCBmcmFtZXMgYXJlIHNpbXBseSB1bmhvb2tlZCBmcm9tIHRoaXMgcGh5cyBz
bG90LiAqLwotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVu
L2FyY2gveDg2L21tL3AybS5jCkBAIC03OTUsNyArNzk1LDggQEAgcDJtX3Jl
bW92ZV9wYWdlKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY3VyX29yZGVyLCBO
VUxMKTsKIAogICAgICAgICBpZiAoIHAybV9pc192YWxpZCh0KSAmJgotICAg
ICAgICAgICAgICghbWZuX3ZhbGlkKF9tZm4obWZuKSkgfHwgbWZuICsgaSAh
PSBtZm5feChtZm5fcmV0dXJuKSkgKQorICAgICAgICAgICAgICghbWZuX3Zh
bGlkKF9tZm4obWZuKSkgfHwgdCA9PSBwMm1fbW1pb19kaXJlY3QgfHwKKyAg
ICAgICAgICAgICAgbWZuICsgaSAhPSBtZm5feChtZm5fcmV0dXJuKSkgKQog
ICAgICAgICAgICAgcmV0dXJuIC1FSUxTRVE7CiAKICAgICAgICAgaSArPSAo
MVVMIDw8IGN1cl9vcmRlcikgLSAoKGdmbl9sICsgaSkgJiAoKDFVTCA8PCBj
dXJfb3JkZXIpIC0gMSkpOwpAQCAtODczLDcgKzg3NCw3IEBAIGd1ZXN0X3Bo
eXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICBpZiAoIHAy
bV9pc19mb3JlaWduKHQpICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAK
LSAgICBpZiAoICFtZm5fdmFsaWQobWZuKSApCisgICAgaWYgKCAhbWZuX3Zh
bGlkKG1mbikgfHwgdCA9PSBwMm1fbW1pb19kaXJlY3QgKQogICAgIHsKICAg
ICAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7CiAgICAgICAgIHJldHVybiAt
RUlOVkFMOwpAQCAtOTE5LDcgKzkyMCw3IEBAIGd1ZXN0X3BoeXNtYXBfYWRk
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgfQogICAgICAgICBp
ZiAoIHAybV9pc19zcGVjaWFsKG90KSApCiAgICAgICAgIHsKLSAgICAgICAg
ICAgIC8qIERvbid0IHBlcm1pdCB1bm1hcHBpbmcgZ3JhbnQvZm9yZWlnbiB0
aGlzIHdheS4gKi8KKyAgICAgICAgICAgIC8qIERvbid0IHBlcm1pdCB1bm1h
cHBpbmcgZ3JhbnQvZm9yZWlnbi9kaXJlY3QtTU1JTyB0aGlzIHdheS4gKi8K
ICAgICAgICAgICAgIGRvbWFpbl9jcmFzaChkKTsKICAgICAgICAgICAgIHAy
bV91bmxvY2socDJtKTsKICAgICAgICAgICAgIApAQCAtMTM3NSw4ICsxMzc2
LDggQEAgaW50IHNldF9pZGVudGl0eV9wMm1fZW50cnkoc3RydWN0IGRvbWFp
bgogICogICAgb3JkZXIrMSAgZm9yIGNhbGxlciB0byByZXRyeSB3aXRoIG9y
ZGVyIChndWFyYW50ZWVkIHNtYWxsZXIgdGhhbgogICogICAgICAgICAgICAg
dGhlIG9yZGVyIHZhbHVlIHBhc3NlZCBpbikKICAqLwotaW50IGNsZWFyX21t
aW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcg
Z2ZuX2wsIG1mbl90IG1mbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgb3JkZXIpCitzdGF0aWMgaW50IGNsZWFyX21taW9fcDJt
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuX2ws
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IG1mbiwg
dW5zaWduZWQgaW50IG9yZGVyKQogewogICAgIGludCByYyA9IC1FSU5WQUw7
CiAgICAgZ2ZuX3QgZ2ZuID0gX2dmbihnZm5fbCk7Ci0tLSBhL3hlbi9hcmNo
L3g4Ni9tbS9wMm0tcG9kLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS1w
b2QuYwpAQCAtMTI5NywxNyArMTI5NywxNyBAQCBndWVzdF9waHlzbWFwX21h
cmtfcG9wdWxhdGVfb25fZGVtYW5kKHN0CiAKICAgICAgICAgcDJtLT5nZXRf
ZW50cnkocDJtLCBnZm5fYWRkKGdmbiwgaSksICZvdCwgJmEsIDAsICZjdXJf
b3JkZXIsIE5VTEwpOwogICAgICAgICBuID0gMVVMIDw8IG1pbihvcmRlciwg
Y3VyX29yZGVyKTsKLSAgICAgICAgaWYgKCBwMm1faXNfcmFtKG90KSApCisg
ICAgICAgIGlmICggb3QgPT0gcDJtX3BvcHVsYXRlX29uX2RlbWFuZCApCisg
ICAgICAgIHsKKyAgICAgICAgICAgIC8qIENvdW50IGhvdyBtYW55IFBvRCBl
bnRyaWVzIHdlJ2xsIGJlIHJlcGxhY2luZyBpZiBzdWNjZXNzZnVsICovCisg
ICAgICAgICAgICBwb2RfY291bnQgKz0gbjsKKyAgICAgICAgfQorICAgICAg
ICBlbHNlIGlmICggb3QgIT0gcDJtX2ludmFsaWQgJiYgb3QgIT0gcDJtX21t
aW9fZG0gKQogICAgICAgICB7CiAgICAgICAgICAgICBQMk1fREVCVUcoImdm
bl90b19tZm4gcmV0dXJuZWQgdHlwZSAlZCFcbiIsIG90KTsKICAgICAgICAg
ICAgIHJjID0gLUVCVVNZOwogICAgICAgICAgICAgZ290byBvdXQ7CiAgICAg
ICAgIH0KLSAgICAgICAgZWxzZSBpZiAoIG90ID09IHAybV9wb3B1bGF0ZV9v
bl9kZW1hbmQgKQotICAgICAgICB7Ci0gICAgICAgICAgICAvKiBDb3VudCBo
b3cgbWFuIFBvRCBlbnRyaWVzIHdlJ2xsIGJlIHJlcGxhY2luZyBpZiBzdWNj
ZXNzZnVsICovCi0gICAgICAgICAgICBwb2RfY291bnQgKz0gbjsKLSAgICAg
ICAgfQogICAgIH0KIAogICAgIC8qIE5vdywgYWN0dWFsbHkgZG8gdGhlIHR3
by13YXkgbWFwcGluZyAqLwotLS0gYS94ZW4vY29tbW9uL21lbW9yeS5jCisr
KyBiL3hlbi9jb21tb24vbWVtb3J5LmMKQEAgLTMzNiw3ICszMzYsNyBAQCBp
bnQgZ3Vlc3RfcmVtb3ZlX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwKICAgICB9
CiAgICAgaWYgKCBwMm10ID09IHAybV9tbWlvX2RpcmVjdCApCiAgICAgewot
ICAgICAgICByYyA9IGNsZWFyX21taW9fcDJtX2VudHJ5KGQsIGdtZm4sIG1m
biwgUEFHRV9PUkRFUl80Syk7CisgICAgICAgIHJjID0gLUVQRVJNOwogICAg
ICAgICBnb3RvIG91dF9wdXRfZ2ZuOwogICAgIH0KICNlbHNlCkBAIC0xNzI0
LDYgKzE3MjQsMTUgQEAgaW50IGNoZWNrX2dldF9wYWdlX2Zyb21fZ2ZuKHN0
cnVjdCBkb21haQogICAgICAgICByZXR1cm4gLUVBR0FJTjsKICAgICB9CiAj
ZW5kaWYKKyNpZmRlZiBDT05GSUdfWDg2CisgICAgaWYgKCBwMm10ID09IHAy
bV9tbWlvX2RpcmVjdCApCisgICAgeworICAgICAgICBpZiAoIHBhZ2UgKQor
ICAgICAgICAgICAgcHV0X3BhZ2UocGFnZSk7CisKKyAgICAgICAgcmV0dXJu
IC1FUEVSTTsKKyAgICB9CisjZW5kaWYKIAogICAgIGlmICggIXBhZ2UgKQog
ICAgICAgICByZXR1cm4gLUVJTlZBTDsKLS0tIGEveGVuL2luY2x1ZGUvYXNt
LXg4Ni9wMm0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCkBA
IC0xNDMsNyArMTQzLDggQEAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgcDJtX3F1
ZXJ5X3Q7CiAKIC8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQgdXAgdmlh
IHNwZWNpYWwgYWNjZXNzb3JzLiAqLwogI2RlZmluZSBQMk1fU1BFQ0lBTF9U
WVBFUyAoUDJNX0dSQU5UX1RZUEVTIHwgXAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHAybV90b19tYXNrKHAybV9tYXBfZm9y
ZWlnbikgfCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fdG9f
bWFzayhwMm1fbW1pb19kaXJlY3QpKQogCiAvKiBWYWxpZCB0eXBlcyBub3Qg
bmVjZXNzYXJpbHkgYXNzb2NpYXRlZCB3aXRoIGEgKHZhbGlkKSBNRk4uICov
CiAjZGVmaW5lIFAyTV9JTlZBTElEX01GTl9UWVBFUyAoUDJNX1BPRF9UWVBF
UyAgICAgICAgICAgICAgICAgIFwKQEAgLTY0MCw4ICs2NDEsNiBAQCBpbnQg
c2V0X2ZvcmVpZ25fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4KIC8qIFNldCBt
bWlvIGFkZHJlc3NlcyBpbiB0aGUgcDJtIHRhYmxlIChmb3IgcGFzcy10aHJv
dWdoKSAqLwogaW50IHNldF9tbWlvX3AybV9lbnRyeShzdHJ1Y3QgZG9tYWlu
ICpkLCB1bnNpZ25lZCBsb25nIGdmbiwgbWZuX3QgbWZuLAogICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgb3JkZXIsIHAybV9hY2Nlc3Nf
dCBhY2Nlc3MpOwotaW50IGNsZWFyX21taW9fcDJtX2VudHJ5KHN0cnVjdCBk
b21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLCBtZm5fdCBtZm4sCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVyKTsKIAog
LyogU2V0IGlkZW50aXR5IGFkZHJlc3NlcyBpbiB0aGUgcDJtIHRhYmxlIChm
b3IgcGFzcy10aHJvdWdoKSAqLwogaW50IHNldF9pZGVudGl0eV9wMm1fZW50
cnkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBnZm4sCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-0a.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-0a.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBmaXggUG9EIGFjY291bnRpbmcgaW4gZ3Vlc3RfcGh5c21h
cF9hZGRfZW50cnkoKQoKVGhlIGluaXRpYWwgb2JzZXJ2YXRpb24gd2FzIHRo
YXQgdGhlIG1mbl92YWxpZCgpIGNoZWNrIGNvbWVzIHRvbyBsYXRlOgpOZWl0
aGVyIG1mbl9hZGQoKSBub3IgbWZuX3RvX3BhZ2UoKSAobGV0IGFsb25lIGRl
LXJlZmVyZW5jaW5nIHRoZQpyZXN1bHQgb2YgdGhlIGxhdHRlcikgYXJlIHZh
bGlkIGZvciBNRk5zIGZhaWxpbmcgdGhpcyBjaGVjay4gTW92ZSBpdCB1cAph
bmQgLSBub3RpY2luZyB0aGF0IHRoZXJlJ3Mgbm8gY2FsbGVyIGRvaW5nIHNv
IC0gYWxzbyBhZGQgYW4gYXNzZXJ0aW9uCnRoYXQgdGhpcyBzaG91bGQgbmV2
ZXIgcHJvZHVjZSAiZmFsc2UiIGhlcmUuCgpJbiB0dXJuIHRoaXMgd291bGQg
aGF2ZSBtZWFudCB0aGF0IHRoZSAiZWxzZSIgdG8gdGhhdCBpZigpIGNvdWxk
IG5vdyBnbwphd2F5LCB3aGljaCBkaWRuJ3Qgc2VlbSByaWdodCBhdCBhbGwu
IEFuZCBpbmRlZWQsIGNvbnNpZGVyaW5nIGNhbGxlcnMKbGlrZSBtZW1vcnlf
ZXhjaGFuZ2UoKSBvciB2YXJpb3VzIGdyYW50IHRhYmxlIGZ1bmN0aW9ucywg
dGhlIFBvRAphY2NvdW50aW5nIHNob3VsZCBoYXZlIGJlZW4gb3V0c2lkZSBv
ZiB0aGF0IGlmKCkgZnJvbSB0aGUgdmVyeQpiZWdpbm5pbmcuCgpTaWduZWQt
b2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkFja2Vk
LWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29t
PgptYXN0ZXIgY29tbWl0OiBhZWEyNzBlM2Y3YzBkYjY5NmM4OGEwZTk0YjFl
Y2U3YWJkMzM5Yzg0Cm1hc3RlciBkYXRlOiAyMDIwLTAyLTIxIDE3OjE0OjM4
ICswMTAwCgotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVu
L2FyY2gveDg2L21tL3AybS5jCkBAIC04ODEsNiArODgxLDEyIEBAIGd1ZXN0
X3BoeXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICBpZiAo
IHAybV9pc19mb3JlaWduKHQpICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7
CiAKKyAgICBpZiAoICFtZm5fdmFsaWQobWZuKSApCisgICAgeworICAgICAg
ICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKKyAgICAgICAgcmV0dXJuIC1FSU5W
QUw7CisgICAgfQorCiAgICAgcDJtX2xvY2socDJtKTsKIAogICAgIFAyTV9E
RUJVRygiYWRkaW5nIGdmbj0lI2x4IG1mbj0lI2x4XG4iLCBnZm5feChnZm4p
LCBtZm5feChtZm4pKTsKQEAgLTk4MSwxMiArOTg3LDEzIEBAIGd1ZXN0X3Bo
eXNtYXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICB9CiAKICAg
ICAvKiBOb3csIGFjdHVhbGx5IGRvIHRoZSB0d28td2F5IG1hcHBpbmcgKi8K
LSAgICBpZiAoIG1mbl92YWxpZChtZm4pICkKKyAgICByYyA9IHAybV9zZXRf
ZW50cnkocDJtLCBnZm4sIG1mbiwgcGFnZV9vcmRlciwgdCwgcDJtLT5kZWZh
dWx0X2FjY2Vzcyk7CisgICAgaWYgKCByYyA9PSAwICkKICAgICB7Ci0gICAg
ICAgIHJjID0gcDJtX3NldF9lbnRyeShwMm0sIGdmbiwgbWZuLCBwYWdlX29y
ZGVyLCB0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtLT5kZWZh
dWx0X2FjY2Vzcyk7Ci0gICAgICAgIGlmICggcmMgKQotICAgICAgICAgICAg
Z290byBvdXQ7IC8qIEZhaWxlZCB0byB1cGRhdGUgcDJtLCBiYWlsIHdpdGhv
dXQgdXBkYXRpbmcgbTJwLiAqLworICAgICAgICBwb2RfbG9jayhwMm0pOwor
ICAgICAgICBwMm0tPnBvZC5lbnRyeV9jb3VudCAtPSBwb2RfY291bnQ7Cisg
ICAgICAgIEJVR19PTihwMm0tPnBvZC5lbnRyeV9jb3VudCA8IDApOworICAg
ICAgICBwb2RfdW5sb2NrKHAybSk7CiAKICAgICAgICAgaWYgKCAhcDJtX2lz
X2dyYW50KHQpICkKICAgICAgICAgewpAQCAtOTk1LDIyICsxMDAyLDcgQEAg
Z3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAqZAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmbl94KGdmbl9hZGQo
Z2ZuLCBpKSkpOwogICAgICAgICB9CiAgICAgfQotICAgIGVsc2UKLSAgICB7
Ci0gICAgICAgIGdkcHJpbnRrKFhFTkxPR19XQVJOSU5HLCAiQWRkaW5nIGJh
ZCBtZm4gdG8gcDJtIG1hcCAoJSNseCAtPiAlI2x4KVxuIiwKLSAgICAgICAg
ICAgICAgICAgZ2ZuX3goZ2ZuKSwgbWZuX3gobWZuKSk7Ci0gICAgICAgIHJj
ID0gcDJtX3NldF9lbnRyeShwMm0sIGdmbiwgSU5WQUxJRF9NRk4sIHBhZ2Vf
b3JkZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1faW52YWxp
ZCwgcDJtLT5kZWZhdWx0X2FjY2Vzcyk7Ci0gICAgICAgIGlmICggcmMgPT0g
MCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIHBvZF9sb2NrKHAybSk7Ci0g
ICAgICAgICAgICBwMm0tPnBvZC5lbnRyeV9jb3VudCAtPSBwb2RfY291bnQ7
Ci0gICAgICAgICAgICBCVUdfT04ocDJtLT5wb2QuZW50cnlfY291bnQgPCAw
KTsKLSAgICAgICAgICAgIHBvZF91bmxvY2socDJtKTsKLSAgICAgICAgfQot
ICAgIH0KIAotb3V0OgogICAgIHAybV91bmxvY2socDJtKTsKIAogICAgIHJl
dHVybiByYzsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-0b.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-0b.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBpZ25vcmUgcDJtX3JlbW92ZV9wYWdlKCkncyBy
ZXR1cm4gdmFsdWUKCkl0J3Mgbm90IHZlcnkgbmljZSB0byByZXR1cm4gZnJv
bSBndWVzdF9waHlzbWFwX2FkZF9lbnRyeSgpIGFmdGVyCnBlcmhhcHMgYWxy
ZWFkeSBoYXZpbmcgbWFkZSBzb21lIGNoYW5nZXMgdG8gdGhlIFAyTSwgYnV0
IHRoaXMgaXMgcHJlLQpleGlzdGluZyBwcmFjdGljZSBpbiB0aGUgZnVuY3Rp
b24sIGFuZCBpbW8gYmV0dGVyIHRoYW4gaWdub3JpbmcgZXJyb3JzLgoKVGFr
ZSB0aGUgbGliZXJ0eSBhbmQgcmVwbGFjZSBhbiBtZm5fYWRkKCkgaW5zdGFu
Y2Ugd2l0aCBhIGxvY2FsIHZhcmlhYmxlCmFscmVhZHkgaG9sZGluZyB0aGUg
cmVzdWx0IChhcyBwcm92ZW4gYnkgdGhlIGNoZWNrIGltbWVkaWF0ZWx5IGFo
ZWFkKS4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBz
dXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVycmFudCA8cGF1bC5kdXJy
YW50QGNpdHJpeC5jb20+CkFja2VkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRy
ZXcuY29vcGVyM0BjaXRyaXguY29tPgptYXN0ZXIgY29tbWl0OiBhNmIwNTFh
ODdhNTg2MzQ3OTY5YmZiYWE2OTI1YWMwZjBjODQ1NDEzCm1hc3RlciBkYXRl
OiAyMDIwLTA0LTAzIDEwOjU2OjEwICswMjAwCgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC03
NzMsOCArNzczLDcgQEAgdm9pZCBwMm1fZmluYWxfdGVhcmRvd24oc3RydWN0
IGRvbWFpbiAqZAogICAgIHAybV90ZWFyZG93bl9ob3N0cDJtKGQpOwogfQog
Ci0KLXN0YXRpYyBpbnQKK3N0YXRpYyBpbnQgX19tdXN0X2NoZWNrCiBwMm1f
cmVtb3ZlX3BhZ2Uoc3RydWN0IHAybV9kb21haW4gKnAybSwgdW5zaWduZWQg
bG9uZyBnZm5fbCwgdW5zaWduZWQgbG9uZyBtZm4sCiAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IHBhZ2Vfb3JkZXIpCiB7CkBAIC05NzksOSArOTc4
LDkgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAq
ZAogICAgICAgICAgICAgICAgIEFTU0VSVChtZm5fdmFsaWQob21mbikpOwog
ICAgICAgICAgICAgICAgIFAyTV9ERUJVRygib2xkIGdmbj0lI2x4IC0+IG1m
biAlI2x4XG4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICBnZm5feChv
Z2ZuKSAsIG1mbl94KG9tZm4pKTsKLSAgICAgICAgICAgICAgICBpZiAoIG1m
bl9lcShvbWZuLCBtZm5fYWRkKG1mbiwgaSkpICkKLSAgICAgICAgICAgICAg
ICAgICAgcDJtX3JlbW92ZV9wYWdlKHAybSwgZ2ZuX3gob2dmbiksIG1mbl94
KG1mbl9hZGQobWZuLCBpKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwKTsKKyAgICAgICAgICAgICAgICBpZiAoIG1mbl9lcShv
bWZuLCBtZm5fYWRkKG1mbiwgaSkpICYmCisgICAgICAgICAgICAgICAgICAg
ICAocmMgPSBwMm1fcmVtb3ZlX3BhZ2UocDJtLCBnZm5feChvZ2ZuKSwgbWZu
X3gob21mbiksIDApKSApCisgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0
OwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQpAQCAtMTAwMyw2
ICsxMDAyLDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRv
bWFpbiAqZAogICAgICAgICB9CiAgICAgfQogCisgb3V0OgogICAgIHAybV91
bmxvY2socDJtKTsKIAogICAgIHJldHVybiByYzsKQEAgLTI2OTAsOSArMjY5
MCw5IEBAIGludCBwMm1fY2hhbmdlX2FsdHAybV9nZm4oc3RydWN0IGRvbWFp
bgogICAgIGlmICggZ2ZuX2VxKG5ld19nZm4sIElOVkFMSURfR0ZOKSApCiAg
ICAgewogICAgICAgICBtZm4gPSBhcDJtLT5nZXRfZW50cnkoYXAybSwgb2xk
X2dmbiwgJnQsICZhLCAwLCBOVUxMLCBOVUxMKTsKLSAgICAgICAgaWYgKCBt
Zm5fdmFsaWQobWZuKSApCi0gICAgICAgICAgICBwMm1fcmVtb3ZlX3BhZ2Uo
YXAybSwgZ2ZuX3gob2xkX2dmbiksIG1mbl94KG1mbiksIFBBR0VfT1JERVJf
NEspOwotICAgICAgICByYyA9IDA7CisgICAgICAgIHJjID0gbWZuX3ZhbGlk
KG1mbikKKyAgICAgICAgICAgICA/IHAybV9yZW1vdmVfcGFnZShhcDJtLCBn
Zm5feChvbGRfZ2ZuKSwgbWZuX3gobWZuKSwgUEFHRV9PUkRFUl80SykKKyAg
ICAgICAgICAgICA6IDA7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KIAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-0c.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-0c.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBkb24ndCBhc3NlcnQgdGhhdCB0aGUgcGFzc2VkIGluIE1G
TiBtYXRjaGVzIGZvciBhIHJlbW92ZQoKZ3Vlc3RfcGh5c21hcF9yZW1vdmVf
cGFnZSgpIGdldHMgaGFuZGVkIGFuIE1GTiBmcm9tIHRoZSBvdXRzaWRlLCB5
ZXQKdGFrZXMgdGhlIG5lY2Vzc2FyeSBsb2NrIHRvIHByZXZlbnQgZnVydGhl
ciBjaGFuZ2VzIHRvIHRoZSBHRk4gPC0+IE1GTgptYXBwaW5nIGl0c2VsZi4g
V2hpbGUgc29tZSBjYWxsZXJzLCBpbiBwYXJ0aWN1bGFyIGd1ZXN0X3JlbW92
ZV9wYWdlKCkKKGJ5IHdheSBvZiBoYXZpbmcgY2FsbGVkIGdldF9nZm5fcXVl
cnkoKSksIGhvbGQgdGhlIEdGTiBsb2NrIGFscmVhZHksCnZhcmlvdXMgb3Ro
ZXJzIChtb3N0IG5vdGFibHkgcGVyaGFwcyB0aGUgMm5kIGluc3RhbmNlIGlu
Cnhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoKSkgZG9uJ3QuIFdoaWxlIGl0
IGFsc28gaXMgYW4gb3B0aW9uIHRvIGZpeAphbGwgdGhlIGNhbGxlcnMsIGRl
YWwgd2l0aCB0aGUgaXNzdWUgaW4gcDJtX3JlbW92ZV9wYWdlKCkgaW5zdGVh
ZDoKUmVwbGFjZSB0aGUgQVNTRVJUKCkgYnkgYSBjb25kaXRpb25hbCBhbmQg
c3BsaXQgdGhlIGxvb3AgaW50byB0d28sIHN1Y2gKdGhhdCBhbGwgY2hlY2tp
bmcgZ2V0cyBkb25lIGJlZm9yZSBhbnkgbW9kaWZpY2F0aW9uIHdvdWxkIG9j
Y3VyLgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1
c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJh
bnRAY2l0cml4LmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJl
dy5jb29wZXIzQGNpdHJpeC5jb20+Cm1hc3RlciBjb21taXQ6IGM2NWVhMTZk
YmNhZmJlNGZlMjE2OTNiMThmOGMyYTNjNWQxNDYwMGUKbWFzdGVyIGRhdGU6
IDIwMjAtMDQtMDMgMTA6NTY6NTUgKzAyMDAKCi0tLSBhL3hlbi9hcmNoL3g4
Ni9tbS9wMm0uYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMKQEAgLTc3
OSw3ICs3NzksNiBAQCBwMm1fcmVtb3ZlX3BhZ2Uoc3RydWN0IHAybV9kb21h
aW4gKnAybSwKIHsKICAgICB1bnNpZ25lZCBsb25nIGk7CiAgICAgZ2ZuX3Qg
Z2ZuID0gX2dmbihnZm5fbCk7Ci0gICAgbWZuX3QgbWZuX3JldHVybjsKICAg
ICBwMm1fdHlwZV90IHQ7CiAgICAgcDJtX2FjY2Vzc190IGE7CiAKQEAgLTc5
MCwxNSArNzg5LDI2IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2Rv
bWFpbiAqcDJtLAogICAgIEFTU0VSVChnZm5fbG9ja2VkX2J5X21lKHAybSwg
Z2ZuKSk7CiAgICAgUDJNX0RFQlVHKCJyZW1vdmluZyBnZm49JSNseCBtZm49
JSNseFxuIiwgZ2ZuX2wsIG1mbik7CiAKKyAgICBmb3IgKCBpID0gMDsgaSA8
ICgxVUwgPDwgcGFnZV9vcmRlcik7ICkKKyAgICB7CisgICAgICAgIHVuc2ln
bmVkIGludCBjdXJfb3JkZXI7CisgICAgICAgIG1mbl90IG1mbl9yZXR1cm4g
PSBwMm0tPmdldF9lbnRyeShwMm0sIGdmbl9hZGQoZ2ZuLCBpKSwgJnQsICZh
LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJmN1cl9vcmRlciwgTlVMTCk7CisKKyAgICAgICAgaWYgKCBwMm1faXNf
dmFsaWQodCkgJiYKKyAgICAgICAgICAgICAoIW1mbl92YWxpZChfbWZuKG1m
bikpIHx8IG1mbiArIGkgIT0gbWZuX3gobWZuX3JldHVybikpICkKKyAgICAg
ICAgICAgIHJldHVybiAtRUlMU0VROworCisgICAgICAgIGkgKz0gKDFVTCA8
PCBjdXJfb3JkZXIpIC0gKChnZm5fbCArIGkpICYgKCgxVUwgPDwgY3VyX29y
ZGVyKSAtIDEpKTsKKyAgICB9CisKICAgICBpZiAoIG1mbl92YWxpZChfbWZu
KG1mbikpICkKICAgICB7CiAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgKDFV
TCA8PCBwYWdlX29yZGVyKTsgaSsrICkKICAgICAgICAgewotICAgICAgICAg
ICAgbWZuX3JldHVybiA9IHAybS0+Z2V0X2VudHJ5KHAybSwgZ2ZuX2FkZChn
Zm4sIGkpLCAmdCwgJmEsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTlVMTCwgTlVMTCk7CisgICAgICAgICAgICBwMm0t
PmdldF9lbnRyeShwMm0sIGdmbl9hZGQoZ2ZuLCBpKSwgJnQsICZhLCAwLCBO
VUxMLCBOVUxMKTsKICAgICAgICAgICAgIGlmICggIXAybV9pc19ncmFudCh0
KSAmJiAhcDJtX2lzX3NoYXJlZCh0KSAmJiAhcDJtX2lzX2ZvcmVpZ24odCkg
KQogICAgICAgICAgICAgICAgIHNldF9ncGZuX2Zyb21fbWZuKG1mbitpLCBJ
TlZBTElEX00yUF9FTlRSWSk7Ci0gICAgICAgICAgICBBU1NFUlQoICFwMm1f
aXNfdmFsaWQodCkgfHwgbWZuICsgaSA9PSBtZm5feChtZm5fcmV0dXJuKSAp
OwogICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiBwMm1fc2V0X2VudHJ5
KHAybSwgZ2ZuLCBJTlZBTElEX01GTiwgcGFnZV9vcmRlciwgcDJtX2ludmFs
aWQsCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9hY3BpLmMKQEAgLTExNywxMiArMTE3LDIxIEBAIHN0YXRpYyBzdHJ1
Y3QgYW1kX2lvbW11ICogX19pbml0IGZpbmRfaW8KICAgICByZXR1cm4gTlVM
TDsKIH0KIAotc3RhdGljIHZvaWQgX19pbml0IHJlc2VydmVfaW9tbXVfZXhj
bHVzaW9uX3JhbmdlKAotICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1
aW50NjRfdCBiYXNlLCB1aW50NjRfdCBsaW1pdCkKK3N0YXRpYyBpbnQgX19p
bml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKAorICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBs
aW1pdCwKKyAgICBib29sIGFsbCwgYm9vbCBpdywgYm9vbCBpcikKIHsKKyAg
ICBpZiAoICFpciB8fCAhaXcgKQorICAgICAgICByZXR1cm4gLUVQRVJNOwor
CiAgICAgLyogbmVlZCB0byBleHRlbmQgZXhjbHVzaW9uIHJhbmdlPyAqLwog
ICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgKQogICAgIHsKKyAg
ICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9uX2xpbWl0ICsgUEFHRV9TSVpF
IDwgYmFzZSB8fAorICAgICAgICAgICAgIGxpbWl0ICsgUEFHRV9TSVpFIDwg
aW9tbXUtPmV4Y2x1c2lvbl9iYXNlIHx8CisgICAgICAgICAgICAgaW9tbXUt
PmV4Y2x1c2lvbl9hbGxvd19hbGwgIT0gYWxsICkKKyAgICAgICAgICAgIHJl
dHVybiAtRUJVU1k7CisKICAgICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9u
X2Jhc2UgPCBiYXNlICkKICAgICAgICAgICAgIGJhc2UgPSBpb21tdS0+ZXhj
bHVzaW9uX2Jhc2U7CiAgICAgICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9s
aW1pdCA+IGxpbWl0ICkKQEAgLTEzMCwxNiArMTM5LDExIEBAIHN0YXRpYyB2
b2lkIF9faW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2kKICAgICB9CiAKICAg
ICBpb21tdS0+ZXhjbHVzaW9uX2VuYWJsZSA9IElPTU1VX0NPTlRST0xfRU5B
QkxFRDsKKyAgICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IGFsbDsK
ICAgICBpb21tdS0+ZXhjbHVzaW9uX2Jhc2UgPSBiYXNlOwogICAgIGlvbW11
LT5leGNsdXNpb25fbGltaXQgPSBsaW1pdDsKLX0KIAotc3RhdGljIHZvaWQg
X19pbml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlX2FsbCgKLSAg
ICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25lZCBsb25n
IGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQpCi17Ci0gICAgcmVzZXJ2ZV9p
b21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAg
ICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IElPTU1VX0NPTlRST0xf
RU5BQkxFRDsKKyAgICByZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgX19p
bml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoCkBAIC0xNzcsNiAr
MTgxLDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbgogICAgIHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3As
IGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAgICB1
bnNpZ25lZCBpbnQgYmRmOworICAgIGludCByYyA9IDA7CiAKICAgICAvKiBp
cyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5nZSBpbnNpZGUgb2YgSU9NTVUgdmly
dHVhbCBhZGRyZXNzIHNwYWNlPyAqLwogICAgIC8qIG5vdGU6ICdsaW1pdCcg
cGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCkBA
IC0xOTgsMTAgKzIwMywxNSBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rl
cl9leGNsdXNpb25fcmFuCiAgICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3Ag
KQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBpb21tdSAp
Ci0gICAgICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9h
bGwoaW9tbXUsIGJhc2UsIGxpbWl0KTsKKyAgICAgICAgeworICAgICAgICAg
ICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwg
YmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOworICAg
ICAgICAgICAgaWYgKCByYyApCisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
cmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW5nZV9mb3JfZGV2aWNlKApAQCAtMjEyLDYgKzIyMiw3IEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICB1bnNp
Z25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgdTE2IHJlcTsKKyAgICBp
bnQgcmMgPSAwOwogCiAgICAgaW9tbXUgPSBmaW5kX2lvbW11X2Zvcl9kZXZp
Y2Uoc2VnLCBiZGYpOwogICAgIGlmICggIWlvbW11ICkKQEAgLTI0MSwxMiAr
MjUyLDEzIEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW4KICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ug
c2V0dGluZ3MgZm9yIGRldmljZSAqLwogICAgIGlmICggbGltaXQgPj0gaW9t
bXVfdG9wICApCiAgICAgewotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQpOworICAgICAgICByYyA9
IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBs
aW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmYWxzZSAvKiBhbGwgKi8sIGl3LCBpcik7CiAgICAgICAgIGl2cnNf
bWFwcGluZ3NbYmRmXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1ZTsKICAg
ICAgICAgaXZyc19tYXBwaW5nc1tyZXFdLmR0ZV9hbGxvd19leGNsdXNpb24g
PSB0cnVlOwogICAgIH0KIAotICAgIHJldHVybiAwOworICAgIHJldHVybiBy
YzsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbmdlX2Zvcl9pb21tdV9kZXZpY2VzKApAQCAtMjU2LDYgKzI2OCw3IEBA
IHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAg
ICB1bnNpZ25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7
CiAgICAgdW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOworICAgIGlu
dCByYyA9IDA7CiAKICAgICAvKiBpcyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5n
ZSBpbnNpZGUgb2YgSU9NTVUgdmlydHVhbCBhZGRyZXNzIHNwYWNlPyAqLwog
ICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8g
YmUgcGFnZS1hbGlnbmVkICovCkBAIC0yODYsOCArMjk5LDEwIEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KIAogICAgIC8q
IHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwog
ICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkKLSAgICAgICAgcmVzZXJ2
ZV9pb21tdV9leGNsdXNpb25fcmFuZ2VfYWxsKGlvbW11LCBiYXNlLCBsaW1p
dCk7Ci0gICAgcmV0dXJuIDA7CisgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21t
dV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgLyog
YWxsICovLCBpdywgaXIpOworCisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9zZWxlY3QoCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtMTQ2LDMyICsxNDYsNDggQEAgc3Rh
dGljIGludCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9leGNsdXNpbwogICAgIHJl
dHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCBfX2luaXQgcmVzZXJ2ZV91bml0
eV9tYXBfZm9yX2RldmljZSgKLSAgICB1MTYgc2VnLCB1MTYgYmRmLCB1bnNp
Z25lZCBsb25nIGJhc2UsCi0gICAgdW5zaWduZWQgbG9uZyBsZW5ndGgsIHU4
IGl3LCB1OCBpcikKK3N0YXRpYyBpbnQgX19pbml0IHJlc2VydmVfdW5pdHlf
bWFwX2Zvcl9kZXZpY2UoCisgICAgdWludDE2X3Qgc2VnLCB1aW50MTZfdCBi
ZGYsIHVuc2lnbmVkIGxvbmcgYmFzZSwKKyAgICB1bnNpZ25lZCBsb25nIGxl
bmd0aCwgYm9vbCBpdywgYm9vbCBpcikKIHsKICAgICBzdHJ1Y3QgaXZyc19t
YXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHNl
Zyk7Ci0gICAgdW5zaWduZWQgbG9uZyBvbGRfdG9wLCBuZXdfdG9wOworICAg
IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwID0gaXZyc19tYXBw
aW5nc1tiZGZdLnVuaXR5X21hcDsKIAotICAgIC8qIG5lZWQgdG8gZXh0ZW5k
IHVuaXR5LW1hcHBlZCByYW5nZT8gKi8KLSAgICBpZiAoIGl2cnNfbWFwcGlu
Z3NbYmRmXS51bml0eV9tYXBfZW5hYmxlICkKKyAgICAvKiBDaGVjayBmb3Ig
b3ZlcmxhcHMuICovCisgICAgZm9yICggOyB1bml0eV9tYXA7IHVuaXR5X21h
cCA9IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewotICAgICAgICBvbGRfdG9w
ID0gaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQgKwotICAg
ICAgICAgICAgaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2VfbGVuZ3Ro
OwotICAgICAgICBuZXdfdG9wID0gYmFzZSArIGxlbmd0aDsKLSAgICAgICAg
aWYgKCBvbGRfdG9wID4gbmV3X3RvcCApCi0gICAgICAgICAgICBuZXdfdG9w
ID0gb2xkX3RvcDsKLSAgICAgICAgaWYgKCBpdnJzX21hcHBpbmdzW2JkZl0u
YWRkcl9yYW5nZV9zdGFydCA8IGJhc2UgKQotICAgICAgICAgICAgYmFzZSA9
IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3JhbmdlX3N0YXJ0OwotICAgICAg
ICBsZW5ndGggPSBuZXdfdG9wIC0gYmFzZTsKLSAgICB9Ci0KLSAgICAvKiBl
eHRlbmQgci93IHBlcm1pc3Npb21zIGFuZCBrZWVwIGFnZ3JlZ2F0ZSAqLwot
ICAgIGl2cnNfbWFwcGluZ3NbYmRmXS53cml0ZV9wZXJtaXNzaW9uID0gaXc7
Ci0gICAgaXZyc19tYXBwaW5nc1tiZGZdLnJlYWRfcGVybWlzc2lvbiA9IGly
OwotICAgIGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXBfZW5hYmxlID0g
dHJ1ZTsKLSAgICBpdnJzX21hcHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9zdGFy
dCA9IGJhc2U7Ci0gICAgaXZyc19tYXBwaW5nc1tiZGZdLmFkZHJfcmFuZ2Vf
bGVuZ3RoID0gbGVuZ3RoOworICAgICAgICAvKgorICAgICAgICAgKiBFeGFj
dCBtYXRjaGVzIGFyZSBva2F5LiBUaGlzIGNhbiBpbiBwYXJ0aWN1bGFyIGhh
cHBlbiB3aGVuCisgICAgICAgICAqIHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5n
ZV9mb3JfZGV2aWNlKCkgY2FsbHMgaGVyZSB0d2ljZSBmb3IgdGhlCisgICAg
ICAgICAqIHNhbWUgKHMsYixkLGYpLgorICAgICAgICAgKi8KKyAgICAgICAg
aWYgKCBiYXNlID09IHVuaXR5X21hcC0+YWRkciAmJiBsZW5ndGggPT0gdW5p
dHlfbWFwLT5sZW5ndGggJiYKKyAgICAgICAgICAgICBpciA9PSB1bml0eV9t
YXAtPnJlYWQgJiYgaXcgPT0gdW5pdHlfbWFwLT53cml0ZSApCisgICAgICAg
ICAgICByZXR1cm4gMDsKKworICAgICAgICBpZiAoIHVuaXR5X21hcC0+YWRk
ciArIHVuaXR5X21hcC0+bGVuZ3RoID4gYmFzZSAmJgorICAgICAgICAgICAg
IGJhc2UgKyBsZW5ndGggPiB1bml0eV9tYXAtPmFkZHIgKQorICAgICAgICB7
CisgICAgICAgICAgICBBTURfSU9NTVVfREVCVUcoIklWTUQgRXJyb3I6IG92
ZXJsYXAgWyVseCwlbHgpIHZzIFslbHgsJWx4KVxuIiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBiYXNlLCBiYXNlICsgbGVuZ3RoLCB1bml0eV9t
YXAtPmFkZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHlf
bWFwLT5hZGRyICsgdW5pdHlfbWFwLT5sZW5ndGgpOworICAgICAgICAgICAg
cmV0dXJuIC1FUEVSTTsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIFBv
cHVsYXRlIGFuZCBpbnNlcnQgYSBuZXcgdW5pdHkgbWFwLiAqLworICAgIHVu
aXR5X21hcCA9IHhtYWxsb2Moc3RydWN0IGl2cnNfdW5pdHlfbWFwKTsKKyAg
ICBpZiAoICF1bml0eV9tYXAgKQorICAgICAgICByZXR1cm4gLUVOT01FTTsK
KworICAgIHVuaXR5X21hcC0+cmVhZCA9IGlyOworICAgIHVuaXR5X21hcC0+
d3JpdGUgPSBpdzsKKyAgICB1bml0eV9tYXAtPmFkZHIgPSBiYXNlOworICAg
IHVuaXR5X21hcC0+bGVuZ3RoID0gbGVuZ3RoOworICAgIHVuaXR5X21hcC0+
bmV4dCA9IGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXA7CisgICAgaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcCA9IHVuaXR5X21hcDsKKworICAg
IHJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9l
eGNsdXNpb25fcmFuZ2VfZm9yX2FsbF9kZXZpY2VzKApAQCAtMTk0LDEzICsy
MTAsMTMgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbgogICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwogICAg
ICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVz
IGZvciBkZXZpY2VzICovCiAgICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJp
ZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAg
ICBmb3IgKCBiZGYgPSAwOyBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYr
KyApCi0gICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNl
KHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7CisgICAgICAgIGZv
ciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBi
ZGYrKyApCisgICAgICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zv
cl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsKICAg
ICAgICAgLyogcHVzaCAnYmFzZScganVzdCBvdXRzaWRlIG9mIHZpcnR1YWwg
YWRkcmVzcyBzcGFjZSAqLwogICAgICAgICBiYXNlID0gaW9tbXVfdG9wOwog
ICAgIH0KICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ug
c2V0dGluZ3MgKi8KLSAgICBpZiAoIGxpbWl0ID49IGlvbW11X3RvcCApCisg
ICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkKICAgICB7CiAg
ICAgICAgIGZvcl9lYWNoX2FtZF9pb21tdSggaW9tbXUgKQogICAgICAgICB7
CkBAIC0yNDIsMTUgKzI1OCwxNSBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdp
c3Rlcl9leGNsdXNpb25fcmFuCiAgICAgICAgIGxlbmd0aCA9IHJhbmdlX3Rv
cCAtIGJhc2U7CiAgICAgICAgIC8qIHJlc2VydmUgdW5pdHktbWFwcGVkIHBh
Z2UgZW50cmllcyBmb3IgZGV2aWNlICovCiAgICAgICAgIC8qIG5vdGU6IHRo
ZXNlIGVudHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAq
LwotICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywg
YmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0gICAgICAgIHJlc2VydmVf
dW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2UsIGxlbmd0aCwg
aXcsIGlyKTsKKyAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3Jf
ZGV2aWNlKHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcikgPzoKKyAg
ICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywg
cmVxLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7CiAKICAgICAgICAgLyogcHVz
aCAnYmFzZScganVzdCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRkcmVzcyBzcGFj
ZSAqLwogICAgICAgICBiYXNlID0gaW9tbXVfdG9wOwogICAgIH0KIAogICAg
IC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyBm
b3IgZGV2aWNlICovCi0gICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3AgICkK
KyAgICBpZiAoICFyYyAmJiBsaW1pdCA+PSBpb21tdV90b3AgICkKICAgICB7
CiAgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2Uo
aW9tbXUsIGJhc2UsIGxpbWl0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGZhbHNlIC8qIGFsbCAqLywgaXcsIGlyKTsK
QEAgLTI4MSwxNSArMjk3LDE1IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lz
dGVyX2V4Y2x1c2lvbl9yYW4KICAgICAgICAgbGVuZ3RoID0gcmFuZ2VfdG9w
IC0gYmFzZTsKICAgICAgICAgLyogcmVzZXJ2ZSByL3cgdW5pdHktbWFwcGVk
IHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAqLwogICAgICAgICAvKiBub3Rl
OiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNpb24gcmFu
Z2UgKi8KLSAgICAgICAgZm9yICggYmRmID0gMDsgYmRmIDwgaXZyc19iZGZf
ZW50cmllczsgYmRmKysgKQorICAgICAgICBmb3IgKCBiZGYgPSAwOyAhcmMg
JiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysgKQogICAgICAgICB7
CiAgICAgICAgICAgICBpZiAoIGlvbW11ID09IGZpbmRfaW9tbXVfZm9yX2Rl
dmljZShpb21tdS0+c2VnLCBiZGYpICkKICAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11
LT5zZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyKTsKICAgICAgICAg
ICAgICAgICByZXEgPSBnZXRfaXZyc19tYXBwaW5ncyhpb21tdS0+c2VnKVti
ZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7Ci0gICAgICAgICAgICAgICAgcmVzZXJ2
ZV91bml0eV9tYXBfZm9yX2RldmljZShpb21tdS0+c2VnLCByZXEsIGJhc2Us
IGxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGl3LCBpcik7CisgICAgICAgICAgICAgICAgcmMgPSByZXNl
cnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZiwgYmFz
ZSwgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpID86CisgICAgICAgICAgICAgICAg
ICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcs
IHJlcSwgYmFzZSwgbGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIpOwogICAgICAgICAg
ICAgfQogICAgICAgICB9CiAKQEAgLTI5OCw3ICszMTQsNyBAQCBzdGF0aWMg
aW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgfQogCiAg
ICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdz
ICovCi0gICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3AgKQorICAgIGlmICgg
IXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCApCiAgICAgICAgIHJjID0gcmVz
ZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRydWUgLyogYWxsICovLCBpdywgaXIpOwogCi0tLSBhL3hlbi9kcml2ZXJz
L3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMKKysrIGIveGVuL2Ry
aXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYwpAQCAtMzY5
LDE1ICszNjksMTcgQEAgc3RhdGljIGludCBhbWRfaW9tbXVfYXNzaWduX2Rl
dmljZShzdHJ1YwogICAgIHN0cnVjdCBpdnJzX21hcHBpbmdzICppdnJzX21h
cHBpbmdzID0gZ2V0X2l2cnNfbWFwcGluZ3MocGRldi0+c2VnKTsKICAgICBp
bnQgYmRmID0gUENJX0JERjIocGRldi0+YnVzLCBkZXZmbik7CiAgICAgaW50
IHJlcV9pZCA9IGdldF9kbWFfcmVxdWVzdG9yX2lkKHBkZXYtPnNlZywgYmRm
KTsKKyAgICBjb25zdCBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKnVuaXR5X21h
cDsKIAotICAgIGlmICggaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21h
cF9lbmFibGUgKQorICAgIGZvciAoIHVuaXR5X21hcCA9IGl2cnNfbWFwcGlu
Z3NbcmVxX2lkXS51bml0eV9tYXA7IHVuaXR5X21hcDsKKyAgICAgICAgICB1
bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQogICAgIHsKLSAgICAgICAg
YW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKLSAgICAgICAg
ICAgIGQsCi0gICAgICAgICAgICBpdnJzX21hcHBpbmdzW3JlcV9pZF0uYWRk
cl9yYW5nZV9zdGFydCwKLSAgICAgICAgICAgIGl2cnNfbWFwcGluZ3NbcmVx
X2lkXS5hZGRyX3JhbmdlX2xlbmd0aCwKLSAgICAgICAgICAgIGl2cnNfbWFw
cGluZ3NbcmVxX2lkXS53cml0ZV9wZXJtaXNzaW9uLAotICAgICAgICAgICAg
aXZyc19tYXBwaW5nc1tyZXFfaWRdLnJlYWRfcGVybWlzc2lvbik7CisgICAg
ICAgIGludCByYyA9IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9t
YXAoCisgICAgICAgICAgICAgICAgICAgICBkLCB1bml0eV9tYXAtPmFkZHIs
IHVuaXR5X21hcC0+bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgdW5p
dHlfbWFwLT53cml0ZSwgdW5pdHlfbWFwLT5yZWFkKTsKKworICAgICAgICBp
ZiAoIHJjICkKKyAgICAgICAgICAgIHJldHVybiByYzsKICAgICB9CiAKICAg
ICByZXR1cm4gcmVhc3NpZ25fZGV2aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2
Zm4sIHBkZXYpOwotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2FtZC1pb21t
dS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvYW1kLWlvbW11LmgKQEAg
LTEwNSwyMCArMTA1LDI0IEBAIHN0cnVjdCBhbWRfaW9tbXUgewogICAgIHN0
cnVjdCBsaXN0X2hlYWQgYXRzX2RldmljZXM7CiB9OwogCitzdHJ1Y3QgaXZy
c191bml0eV9tYXAgeworICAgIGJvb2wgcmVhZDoxOworICAgIGJvb2wgd3Jp
dGU6MTsKKyAgICBwYWRkcl90IGFkZHI7CisgICAgdW5zaWduZWQgbG9uZyBs
ZW5ndGg7CisgICAgc3RydWN0IGl2cnNfdW5pdHlfbWFwICpuZXh0OworfTsK
Kwogc3RydWN0IGl2cnNfbWFwcGluZ3MgewogICAgIHVpbnQxNl90IGR0ZV9y
ZXF1ZXN0b3JfaWQ7CiAgICAgYm9vbCB2YWxpZDoxOwogICAgIGJvb2wgZHRl
X2FsbG93X2V4Y2x1c2lvbjoxOwotICAgIGJvb2wgdW5pdHlfbWFwX2VuYWJs
ZToxOwotICAgIGJvb2wgd3JpdGVfcGVybWlzc2lvbjoxOwotICAgIGJvb2wg
cmVhZF9wZXJtaXNzaW9uOjE7CiAKICAgICAvKiBpdmhkIGRldmljZSBkYXRh
IHNldHRpbmdzICovCiAgICAgdWludDhfdCBkZXZpY2VfZmxhZ3M7CiAKLSAg
ICB1bnNpZ25lZCBsb25nIGFkZHJfcmFuZ2Vfc3RhcnQ7Ci0gICAgdW5zaWdu
ZWQgbG9uZyBhZGRyX3JhbmdlX2xlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lv
bW11ICppb21tdTsKKyAgICBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKnVuaXR5
X21hcDsKIAogICAgIC8qIHBlciBkZXZpY2UgaW50ZXJydXB0IHJlbWFwcGlu
ZyB0YWJsZSAqLwogICAgIHZvaWQgKmludHJlbWFwX3RhYmxlOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0
LmMKQEAgLTY3OCw3ICs2NzgsNyBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sIGdmCiAgICAgdWludDhfdCBpcGF0ID0gMDsKICAg
ICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsKICAgICBib29s
X3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsKLSAgICB1bnNpZ25lZCBpbnQgaW9t
bXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7Cisg
ICAgdW5zaWduZWQgaW50IGlvbW11X2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBwMm1hLCBtZm4pOwogICAgIGJvb2xfdCBuZWVkc19zeW5j
ID0gMTsKICAgICBlcHRfZW50cnlfdCBvbGRfZW50cnkgPSB7IC5lcHRlID0g
MCB9OwogICAgIGVwdF9lbnRyeV90IG5ld19lbnRyeSA9IHsgLmVwdGUgPSAw
IH07CkBAIC04MDUsOCArODA1LDggQEAgZXB0X3NldF9lbnRyeShzdHJ1Y3Qg
cDJtX2RvbWFpbiAqcDJtLCBnZgogCiAgICAgICAgIC8qIFNhZmUgdG8gcmVh
ZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2UgaG9sZCB0aGUgcDJtIGxvY2sgKi8K
ICAgICAgICAgaWYgKCBlcHRfZW50cnktPm1mbiA9PSBuZXdfZW50cnkubWZu
ICYmCi0gICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhlcHRfZW50
cnktPnNhX3AybXQsIF9tZm4oZXB0X2VudHJ5LT5tZm4pKSA9PQotICAgICAg
ICAgICAgIGlvbW11X2ZsYWdzICkKKyAgICAgICAgICAgICBwMm1fZ2V0X2lv
bW11X2ZsYWdzKGVwdF9lbnRyeS0+c2FfcDJtdCwgZXB0X2VudHJ5LT5hY2Nl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKGVw
dF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVfZmxhZ3MgKQogICAgICAgICAgICAg
bmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMDsKIAogICAgICAgICBlcHRfcDJt
X3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3X2VudHJ5LCBwMm10LCBwMm1hKTsK
LS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wdC5jCisrKyBiL3hlbi9hcmNo
L3g4Ni9tbS9wMm0tcHQuYwpAQCAtNDgwLDYgKzQ4MCwxNiBAQCBpbnQgcDJt
X3B0X2hhbmRsZV9kZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAgICAgcmV0dXJu
IHJjOwogfQogCisvKiBSZWNvbnN0cnVjdCBhIGZha2UgcDJtX2FjY2Vzc190
IGZyb20gc3RvcmVkIFBURSBmbGFncy4gKi8KK3N0YXRpYyBwMm1fYWNjZXNz
X3QgcDJtX2ZsYWdzX3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7
CisgICAgaWYgKCBmbGFncyAmIF9QQUdFX1BSRVNFTlQgKQorICAgICAgICBy
ZXR1cm4gcDJtX2FjY2Vzc19uOworCisgICAgLyogTm8gbmVlZCB0byBsb29r
IGF0IF9QQUdFX05YIGZvciBub3cuICovCisgICAgcmV0dXJuIGZsYWdzICYg
X1BBR0VfUlcgPyBwMm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vzc19yOworfQor
CiAvKiBDaGVja3Mgb25seSBhcHBsaWNhYmxlIHRvIGVudHJpZXMgd2l0aCBv
cmRlciA+IFBBR0VfT1JERVJfNEsgKi8KIHN0YXRpYyB2b2lkIGNoZWNrX2Vu
dHJ5KG1mbl90IG1mbiwgcDJtX3R5cGVfdCBuZXcsIHAybV90eXBlX3Qgb2xk
LAogICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVy
KQpAQCAtNTE0LDcgKzUyNCw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0
IHAybV9kb21haW4gKnAybSwKICAgICBsMl9wZ2VudHJ5X3QgbDJlX2NvbnRl
bnQ7CiAgICAgbDNfcGdlbnRyeV90IGwzZV9jb250ZW50OwogICAgIGludCBy
YzsKLSAgICB1bnNpZ25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdzID0gcDJtX2dl
dF9pb21tdV9mbGFncyhwMm10LCBtZm4pOworICAgIHVuc2lnbmVkIGludCBp
b21tdV9wdGVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIHAy
bWEsIG1mbik7CiAgICAgLyoKICAgICAgKiBvbGRfbWZuIGFuZCBpb21tdV9v
bGRfZmxhZ3MgY29udHJvbCBwb3NzaWJsZSBmbHVzaC91cGRhdGUgbmVlZHMg
b24gdGhlCiAgICAgICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBN
Rk4gb3IgZmxhZ3MgKGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4KQEAgLTU3
Nyw2ICs1ODcsNyBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9t
YWluICpwMm0sCiAgICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRf
cGZuKCpwMm1fZW50cnkpOwogICAgICAgICAgICAgICAgIGlvbW11X29sZF9m
bGFncyA9CiAgICAgICAgICAgICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxh
Z3MocDJtX2ZsYWdzX3RvX3R5cGUoZmxhZ3MpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9mbGFnc190b19hY2Nlc3Mo
ZmxhZ3MpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIF9tZm4ob2xkX21mbikpOwogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgZWxzZQpAQCAtNjE5LDkgKzYzMCwxMCBAQCBwMm1fcHRfc2V0X2VudHJ5
KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRSSUVTKTsKICAg
ICAgICAgQVNTRVJUKHAybV9lbnRyeSk7CiAgICAgICAgIG9sZF9tZm4gPSBs
MWVfZ2V0X3BmbigqcDJtX2VudHJ5KTsKKyAgICAgICAgZmxhZ3MgPSBsMWVf
Z2V0X2ZsYWdzKCpwMm1fZW50cnkpOwogICAgICAgICBpb21tdV9vbGRfZmxh
Z3MgPQotICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxh
Z3NfdG9fdHlwZShsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7Cisg
ICAgICAgICAgICBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9mbGFnc190b190
eXBlKGZsYWdzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksIF9tZm4ob2xkX21mbikpOwog
CiAgICAgICAgIGlmICggbWZuX3ZhbGlkKG1mbikgfHwgcDJtX2FsbG93c19p
bnZhbGlkX21mbihwMm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50
ID0gcDJtX2wxZV9mcm9tX3BmbihtZm5feChtZm4pLApAQCAtNjQ5LDYgKzY2
MSw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAy
bSwKICAgICAgICAgICAgICAgICBvbGRfbWZuID0gbDFlX2dldF9wZm4oKnAy
bV9lbnRyeSk7CiAgICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0K
ICAgICAgICAgICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1f
ZmxhZ3NfdG9fdHlwZShmbGFncyksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyks
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21m
bihvbGRfbWZuKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNl
Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2lu
Y2x1ZGUvYXNtLXg4Ni9wMm0uaApAQCAtOTA4LDcgKzkwOCw4IEBAIHN0YXRp
YyBpbmxpbmUgdm9pZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnUKIC8qCiAgKiBw
Mm0gdHlwZSB0byBJT01NVSBmbGFncwogICovCi1zdGF0aWMgaW5saW5lIHVu
c2lnbmVkIGludCBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90eXBlX3QgcDJt
dCwgbWZuX3QgbWZuKQorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJt
X2dldF9pb21tdV9mbGFncyhwMm1fdHlwZV90IHAybXQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9hY2Nl
c3NfdCBwMm1hLCBtZm5fdCBtZm4pCiB7CiAgICAgdW5zaWduZWQgaW50IGZs
YWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC0x
MzUxLDcgKzEzNTEsNyBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShz
dHJ1Y3QgZG9tYWluCiAgICAgICAgIGlmICggIWlzX2lvbW11X2VuYWJsZWQo
ZCkgKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHJldHVybiBp
b21tdV9sZWdhY3lfbWFwKGQsIF9kZm4oZ2ZuX2wpLCBfbWZuKGdmbl9sKSwg
UEFHRV9PUkRFUl80SywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSU9NTVVGX3JlYWRhYmxlIHwgSU9NTVVGX3dyaXRhYmxlKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2FjY2Vzc190b19pb21t
dV9mbGFncyhwMm1hKSk7CiAgICAgfQogCiAgICAgZ2ZuX2xvY2socDJtLCBn
Zm4sIDApOwotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9t
bXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUu
YwpAQCAtNDIsMTIgKzQyLDYgQEAKICNpbmNsdWRlICJ2dGQuaCIKICNpbmNs
dWRlICIuLi9hdHMuaCIKIAotc3RydWN0IG1hcHBlZF9ybXJyIHsKLSAgICBz
dHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7Ci0gICAgdTY0IGJhc2UsIGVuZDsKLSAg
ICB1bnNpZ25lZCBpbnQgY291bnQ7Ci19OwotCiAvKiBQb3NzaWJsZSB1bmZp
bHRlcmVkIExBUElDL01TSSBtZXNzYWdlcyBmcm9tIHVudHJ1c3RlZCBzb3Vy
Y2VzPyAqLwogYm9vbCBfX3JlYWRfbW9zdGx5IHVudHJ1c3RlZF9tc2k7CiAK
QEAgLTE3OTksMTcgKzE3OTMsMTIgQEAgb3V0Ogogc3RhdGljIHZvaWQgaW9t
bXVfZG9tYWluX3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAg
c3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7Ci0gICAg
c3RydWN0IG1hcHBlZF9ybXJyICptcm1yciwgKnRtcDsKICAgICBjb25zdCBz
dHJ1Y3QgYWNwaV9kcmhkX3VuaXQgKmRyaGQ7CiAKICAgICBpZiAoIGxpc3Rf
ZW1wdHkoJmFjcGlfZHJoZF91bml0cykgKQogICAgICAgICByZXR1cm47CiAK
LSAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUgKCBtcm1yciwgdG1wLCAm
aGQtPmFyY2gubWFwcGVkX3JtcnJzLCBsaXN0ICkKLSAgICB7Ci0gICAgICAg
IGxpc3RfZGVsKCZtcm1yci0+bGlzdCk7Ci0gICAgICAgIHhmcmVlKG1ybXJy
KTsKLSAgICB9CisgICAgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKGQp
OwogCiAgICAgQVNTRVJUKGlzX2lvbW11X2VuYWJsZWQoZCkpOwogCkBAIC0x
OTYzLDc0ICsxOTUyLDYgQEAgc3RhdGljIHZvaWQgaW9tbXVfc2V0X3BnZChz
dHJ1Y3QgZG9tYWluCiAgICAgICAgIHBhZ2V0YWJsZV9nZXRfcGFkZHIocGFn
ZXRhYmxlX2Zyb21fbWZuKHBnZF9tZm4pKTsKIH0KIAotc3RhdGljIGludCBy
bXJyX2lkZW50aXR5X21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCwgYm9vbF90
IG1hcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHN0cnVjdCBhY3BpX3JtcnJfdW5pdCAqcm1yciwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHUzMiBmbGFnKQotewotICAgIHVuc2lnbmVk
IGxvbmcgYmFzZV9wZm4gPSBybXJyLT5iYXNlX2FkZHJlc3MgPj4gUEFHRV9T
SElGVF80SzsKLSAgICB1bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdFX0FM
SUdOXzRLKHJtcnItPmVuZF9hZGRyZXNzKSA+PiBQQUdFX1NISUZUXzRLOwot
ICAgIHN0cnVjdCBtYXBwZWRfcm1yciAqbXJtcnI7Ci0gICAgc3RydWN0IGRv
bWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7Ci0KLSAgICBBU1NFUlQo
cGNpZGV2c19sb2NrZWQoKSk7Ci0gICAgQVNTRVJUKHJtcnItPmJhc2VfYWRk
cmVzcyA8IHJtcnItPmVuZF9hZGRyZXNzKTsKLQotICAgIC8qCi0gICAgICog
Tm8gbmVlZCB0byBhY3F1aXJlIGhkLT5hcmNoLm1hcHBpbmdfbG9jazogQm90
aCBpbnNlcnRpb24gYW5kIHJlbW92YWwKLSAgICAgKiBnZXQgZG9uZSB3aGls
ZSBob2xkaW5nIHBjaWRldnNfbG9jay4KLSAgICAgKi8KLSAgICBsaXN0X2Zv
cl9lYWNoX2VudHJ5KCBtcm1yciwgJmhkLT5hcmNoLm1hcHBlZF9ybXJycywg
bGlzdCApCi0gICAgewotICAgICAgICBpZiAoIG1ybXJyLT5iYXNlID09IHJt
cnItPmJhc2VfYWRkcmVzcyAmJgotICAgICAgICAgICAgIG1ybXJyLT5lbmQg
PT0gcm1yci0+ZW5kX2FkZHJlc3MgKQotICAgICAgICB7Ci0gICAgICAgICAg
ICBpbnQgcmV0ID0gMDsKLQotICAgICAgICAgICAgaWYgKCBtYXAgKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICsrbXJtcnItPmNvdW50Owot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICBpZiAoIC0tbXJtcnItPmNvdW50ICkKLSAgICAgICAgICAg
ICAgICByZXR1cm4gMDsKLQotICAgICAgICAgICAgd2hpbGUgKCBiYXNlX3Bm
biA8IGVuZF9wZm4gKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IGlmICggY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KGQsIGJhc2VfcGZuKSAp
Ci0gICAgICAgICAgICAgICAgICAgIHJldCA9IC1FTlhJTzsKLSAgICAgICAg
ICAgICAgICBiYXNlX3BmbisrOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBsaXN0X2RlbCgmbXJtcnItPmxpc3QpOwotICAgICAgICAgICAgeGZy
ZWUobXJtcnIpOwotICAgICAgICAgICAgcmV0dXJuIHJldDsKLSAgICAgICAg
fQotICAgIH0KLQotICAgIGlmICggIW1hcCApCi0gICAgICAgIHJldHVybiAt
RU5PRU5UOwotCi0gICAgd2hpbGUgKCBiYXNlX3BmbiA8IGVuZF9wZm4gKQot
ICAgIHsKLSAgICAgICAgaW50IGVyciA9IHNldF9pZGVudGl0eV9wMm1fZW50
cnkoZCwgYmFzZV9wZm4sIHAybV9hY2Nlc3NfcncsIGZsYWcpOwotCi0gICAg
ICAgIGlmICggZXJyICkKLSAgICAgICAgICAgIHJldHVybiBlcnI7Ci0gICAg
ICAgIGJhc2VfcGZuKys7Ci0gICAgfQotCi0gICAgbXJtcnIgPSB4bWFsbG9j
KHN0cnVjdCBtYXBwZWRfcm1ycik7Ci0gICAgaWYgKCAhbXJtcnIgKQotICAg
ICAgICByZXR1cm4gLUVOT01FTTsKLSAgICBtcm1yci0+YmFzZSA9IHJtcnIt
PmJhc2VfYWRkcmVzczsKLSAgICBtcm1yci0+ZW5kID0gcm1yci0+ZW5kX2Fk
ZHJlc3M7Ci0gICAgbXJtcnItPmNvdW50ID0gMTsKLSAgICBsaXN0X2FkZF90
YWlsKCZtcm1yci0+bGlzdCwgJmhkLT5hcmNoLm1hcHBlZF9ybXJycyk7Ci0K
LSAgICByZXR1cm4gMDsKLX0KLQogc3RhdGljIGludCBpbnRlbF9pb21tdV9h
ZGRfZGV2aWNlKHU4IGRldmZuLCBzdHJ1Y3QgcGNpX2RldiAqcGRldikKIHsK
ICAgICBzdHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnI7CkBAIC0yMDYyLDcg
KzE5ODMsOSBAQCBzdGF0aWMgaW50IGludGVsX2lvbW11X2FkZF9kZXZpY2Uo
dTggZGV2CiAgICAgICAgICAgICAgKiBTaW5jZSBSTVJScyBhcmUgYWx3YXlz
IHJlc2VydmVkIGluIHRoZSBlODIwIG1hcCBmb3IgdGhlIGhhcmR3YXJlCiAg
ICAgICAgICAgICAgKiBkb21haW4sIHRoZXJlIHNob3VsZG4ndCBiZSBhIGNv
bmZsaWN0LgogICAgICAgICAgICAgICovCi0gICAgICAgICAgICByZXQgPSBy
bXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWluLCAxLCBybXJyLCAw
KTsKKyAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50aXR5X21hcHBpbmco
cGRldi0+ZG9tYWluLCBwMm1fYWNjZXNzX3J3LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5iYXNlX2FkZHJlc3Ms
IHJtcnItPmVuZF9hZGRyZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAwKTsKICAgICAgICAgICAgIGlmICggcmV0ICkK
ICAgICAgICAgICAgICAgICBkcHJpbnRrKFhFTkxPR19FUlIgVlREUFJFRklY
LCAiZCVkOiBSTVJSIG1hcHBpbmcgZmFpbGVkXG4iLAogICAgICAgICAgICAg
ICAgICAgICAgICAgcGRldi0+ZG9tYWluLT5kb21haW5faWQpOwpAQCAtMjEw
Nyw3ICsyMDMwLDggQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9yZW1vdmVf
ZGV2aWNlKHU4CiAgICAgICAgICAqIEFueSBmbGFnIGlzIG5vdGhpbmcgdG8g
Y2xlYXIgdGhlc2UgbWFwcGluZ3MgYnV0IGhlcmUKICAgICAgICAgICogaXRz
IGFsd2F5cyBzYWZlIGFuZCBzdHJpY3QgdG8gc2V0IDAuCiAgICAgICAgICAq
LwotICAgICAgICBybXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWlu
LCAwLCBybXJyLCAwKTsKKyAgICAgICAgaW9tbXVfaWRlbnRpdHlfbWFwcGlu
ZyhwZGV2LT5kb21haW4sIHAybV9hY2Nlc3NfeCwgcm1yci0+YmFzZV9hZGRy
ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmVu
ZF9hZGRyZXNzLCAwKTsKICAgICB9CiAKICAgICByZXR1cm4gZG9tYWluX2Nv
bnRleHRfdW5tYXAocGRldi0+ZG9tYWluLCBkZXZmbiwgcGRldik7CkBAIC0y
MzA2LDcgKzIyMzAsOCBAQCBzdGF0aWMgdm9pZCBfX2h3ZG9tX2luaXQgc2V0
dXBfaHdkb21fcm1yCiAgICAgICAgICAqIGRvbWFpbiwgdGhlcmUgc2hvdWxk
bid0IGJlIGEgY29uZmxpY3QuIFNvIGl0cyBhbHdheXMgc2FmZSBhbmQKICAg
ICAgICAgICogc3RyaWN0IHRvIHNldCAwLgogICAgICAgICAgKi8KLSAgICAg
ICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKGQsIDEsIHJtcnIsIDAp
OworICAgICAgICByZXQgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQsIHAy
bV9hY2Nlc3NfcncsIHJtcnItPmJhc2VfYWRkcmVzcywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5lbmRfYWRkcmVzcywg
MCk7CiAgICAgICAgIGlmICggcmV0ICkKICAgICAgICAgICAgIGRwcmludGso
WEVOTE9HX0VSUiBWVERQUkVGSVgsCiAgICAgICAgICAgICAgICAgICAgICAi
SU9NTVU6IG1hcHBpbmcgcmVzZXJ2ZWQgcmVnaW9uIGZhaWxlZFxuIik7CkBA
IC0yNDY1LDcgKzIzOTAsOSBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2Rldmlj
ZV9vd25lcnNoaXAoCiAgICAgICAgICAgICAgICAgICogQW55IFJNUlIgZmxh
ZyBpcyBhbHdheXMgaWdub3JlZCB3aGVuIHJlbW92ZSBhIGRldmljZSwKICAg
ICAgICAgICAgICAgICAgKiBidXQgaXRzIGFsd2F5cyBzYWZlIGFuZCBzdHJp
Y3QgdG8gc2V0IDAuCiAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAg
ICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKHNvdXJjZSwgMCwg
cm1yciwgMCk7CisgICAgICAgICAgICAgICAgcmV0ID0gaW9tbXVfaWRlbnRp
dHlfbWFwcGluZyhzb3VyY2UsIHAybV9hY2Nlc3NfeCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmJhc2Vf
YWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCAwKTsKICAgICAgICAgICAg
ICAgICBpZiAoIHJldCAhPSAtRU5PRU5UICkKICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHJldDsKICAgICAgICAgICAgIH0KQEAgLTI1NjIsNyArMjQ4
OSw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfYXNzaWduX2RldmljZSgK
ICAgICAgICAgICAgICBQQ0lfQlVTKGJkZikgPT0gYnVzICYmCiAgICAgICAg
ICAgICAgUENJX0RFVkZOMihiZGYpID09IGRldmZuICkKICAgICAgICAgewot
ICAgICAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKGQsIDEs
IHJtcnIsIGZsYWcpOworICAgICAgICAgICAgcmV0ID0gaW9tbXVfaWRlbnRp
dHlfbWFwcGluZyhkLCBwMm1fYWNjZXNzX3J3LCBybXJyLT5iYXNlX2FkZHJl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJtcnItPmVuZF9hZGRyZXNzLCBmbGFnKTsKICAgICAgICAgICAgIGlmICgg
cmV0ICkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBpbnQgcmM7
Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jCisr
KyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jCkBAIC0x
MjcsNyArMTI3LDcgQEAgaW50IGFyY2hfaW9tbXVfZG9tYWluX2luaXQoc3Ry
dWN0IGRvbWFpbgogICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9t
X2lvbW11KGQpOwogCiAgICAgc3Bpbl9sb2NrX2luaXQoJmhkLT5hcmNoLm1h
cHBpbmdfbG9jayk7Ci0gICAgSU5JVF9MSVNUX0hFQUQoJmhkLT5hcmNoLm1h
cHBlZF9ybXJycyk7CisgICAgSU5JVF9MSVNUX0hFQUQoJmhkLT5hcmNoLmlk
ZW50aXR5X21hcHMpOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xMzYsNiAr
MTM2LDk5IEBAIHZvaWQgYXJjaF9pb21tdV9kb21haW5fZGVzdHJveShzdHJ1
Y3QgZG8KIHsKIH0KIAorc3RydWN0IGlkZW50aXR5X21hcCB7CisgICAgc3Ry
dWN0IGxpc3RfaGVhZCBsaXN0OworICAgIHBhZGRyX3QgYmFzZSwgZW5kOwor
ICAgIHAybV9hY2Nlc3NfdCBhY2Nlc3M7CisgICAgdW5zaWduZWQgaW50IGNv
dW50OworfTsKKworaW50IGlvbW11X2lkZW50aXR5X21hcHBpbmcoc3RydWN0
IGRvbWFpbiAqZCwgcDJtX2FjY2Vzc190IHAybWEsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgZW5kLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGZsYWcpCit7
CisgICAgdW5zaWduZWQgbG9uZyBiYXNlX3BmbiA9IGJhc2UgPj4gUEFHRV9T
SElGVF80SzsKKyAgICB1bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdFX0FM
SUdOXzRLKGVuZCkgPj4gUEFHRV9TSElGVF80SzsKKyAgICBzdHJ1Y3QgaWRl
bnRpdHlfbWFwICptYXA7CisgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQg
PSBkb21faW9tbXUoZCk7CisKKyAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQo
KSk7CisgICAgQVNTRVJUKGJhc2UgPCBlbmQpOworCisgICAgLyoKKyAgICAg
KiBObyBuZWVkIHRvIGFjcXVpcmUgaGQtPmFyY2gubWFwcGluZ19sb2NrOiBC
b3RoIGluc2VydGlvbiBhbmQgcmVtb3ZhbAorICAgICAqIGdldCBkb25lIHdo
aWxlIGhvbGRpbmcgcGNpZGV2c19sb2NrLgorICAgICAqLworICAgIGxpc3Rf
Zm9yX2VhY2hfZW50cnkoIG1hcCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMs
IGxpc3QgKQorICAgIHsKKyAgICAgICAgaWYgKCBtYXAtPmJhc2UgPT0gYmFz
ZSAmJiBtYXAtPmVuZCA9PSBlbmQgKQorICAgICAgICB7CisgICAgICAgICAg
ICBpbnQgcmV0ID0gMDsKKworICAgICAgICAgICAgaWYgKCBwMm1hICE9IHAy
bV9hY2Nlc3NfeCApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aWYgKCBtYXAtPmFjY2VzcyAhPSBwMm1hICkKKyAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIC1FQUREUklOVVNFOworICAgICAgICAgICAgICAgICsrbWFw
LT5jb3VudDsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgaWYgKCAtLW1hcC0+Y291bnQgKQorICAg
ICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAo
IGJhc2VfcGZuIDwgZW5kX3BmbiApCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgaWYgKCBjbGVhcl9pZGVudGl0eV9wMm1fZW50cnkoZCwgYmFz
ZV9wZm4pICkKKyAgICAgICAgICAgICAgICAgICAgcmV0ID0gLUVOWElPOwor
ICAgICAgICAgICAgICAgIGJhc2VfcGZuKys7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOworICAgICAgICAg
ICAgeGZyZWUobWFwKTsKKworICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAg
ICAgICAgfQorCisgICAgICAgIGlmICggZW5kID49IG1hcC0+YmFzZSAmJiBt
YXAtPmVuZCA+PSBiYXNlICkKKyAgICAgICAgICAgIHJldHVybiAtRUFERFJJ
TlVTRTsKKyAgICB9CisKKyAgICBpZiAoIHAybWEgPT0gcDJtX2FjY2Vzc194
ICkKKyAgICAgICAgcmV0dXJuIC1FTk9FTlQ7CisKKyAgICB3aGlsZSAoIGJh
c2VfcGZuIDwgZW5kX3BmbiApCisgICAgeworICAgICAgICBpbnQgZXJyID0g
c2V0X2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3BmbiwgcDJtYSwgZmxh
Zyk7CisKKyAgICAgICAgaWYgKCBlcnIgKQorICAgICAgICAgICAgcmV0dXJu
IGVycjsKKyAgICAgICAgYmFzZV9wZm4rKzsKKyAgICB9CisKKyAgICBtYXAg
PSB4bWFsbG9jKHN0cnVjdCBpZGVudGl0eV9tYXApOworICAgIGlmICggIW1h
cCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworICAgIG1hcC0+YmFzZSA9
IGJhc2U7CisgICAgbWFwLT5lbmQgPSBlbmQ7CisgICAgbWFwLT5hY2Nlc3Mg
PSBwMm1hOworICAgIG1hcC0+Y291bnQgPSAxOworICAgIGxpc3RfYWRkX3Rh
aWwoJm1hcC0+bGlzdCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMpOworCisg
ICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFwX3Rl
YXJkb3duKHN0cnVjdCBkb21haW4gKmQpCit7CisgICAgc3RydWN0IGRvbWFp
bl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7CisgICAgc3RydWN0IGlkZW50
aXR5X21hcCAqbWFwLCAqdG1wOworCisgICAgbGlzdF9mb3JfZWFjaF9lbnRy
eV9zYWZlICggbWFwLCB0bXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzLCBs
aXN0ICkKKyAgICB7CisgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOwor
ICAgICAgICB4ZnJlZShtYXApOworICAgIH0KK30KKwogc3RhdGljIGJvb2wg
X19od2RvbV9pbml0IGh3ZG9tX2lvbW11X21hcChjb25zdCBzdHJ1Y3QgZG9t
YWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBsb25nIHBmbiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZuKQot
LS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2lvbW11LmgKKysrIGIveGVuL2lu
Y2x1ZGUvYXNtLXg4Ni9pb21tdS5oCkBAIC0xNiw2ICsxNiw3IEBACiAKICNp
bmNsdWRlIDx4ZW4vZXJybm8uaD4KICNpbmNsdWRlIDx4ZW4vbGlzdC5oPgor
I2luY2x1ZGUgPHhlbi9tZW1fYWNjZXNzLmg+CiAjaW5jbHVkZSA8eGVuL3Nw
aW5sb2NrLmg+CiAjaW5jbHVkZSA8YXNtL2FwaWNkZWYuaD4KICNpbmNsdWRl
IDxhc20vcHJvY2Vzc29yLmg+CkBAIC00OSw3ICs1MCw3IEBAIHN0cnVjdCBh
cmNoX2lvbW11CiAgICAgc3BpbmxvY2tfdCBtYXBwaW5nX2xvY2s7ICAgICAg
ICAgICAgLyogaW8gcGFnZSB0YWJsZSBsb2NrICovCiAgICAgaW50IGFnYXc7
ICAgICAvKiBhZGp1c3RlZCBndWVzdCBhZGRyZXNzIHdpZHRoLCAwIGlzIGxl
dmVsIDIgMzAtYml0ICovCiAgICAgdTY0IGlvbW11X2JpdG1hcDsgICAgICAg
ICAgICAgIC8qIGJpdG1hcCBvZiBpb21tdShzKSB0aGF0IHRoZSBkb21haW4g
dXNlcyAqLwotICAgIHN0cnVjdCBsaXN0X2hlYWQgbWFwcGVkX3JtcnJzOwor
ICAgIHN0cnVjdCBsaXN0X2hlYWQgaWRlbnRpdHlfbWFwczsKIAogICAgIC8q
IGFtZCBpb21tdSBzdXBwb3J0ICovCiAgICAgaW50IHBhZ2luZ19tb2RlOwpA
QCAtMTEyLDYgKzExMywxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW9tbXVf
ZGlzYWJsZV94MmFwaWMoCiAgICAgICAgIGlvbW11X29wcy5kaXNhYmxlX3gy
YXBpYygpOwogfQogCitpbnQgaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhzdHJ1
Y3QgZG9tYWluICpkLCBwMm1fYWNjZXNzX3QgcDJtYSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBlbmQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZyk7
Cit2b2lkIGlvbW11X2lkZW50aXR5X21hcF90ZWFyZG93bihzdHJ1Y3QgZG9t
YWluICpkKTsKKwogZXh0ZXJuIGJvb2wgdW50cnVzdGVkX21zaTsKIAogaW50
IHBpX3VwZGF0ZV9pcnRlKGNvbnN0IHN0cnVjdCBwaV9kZXNjICpwaV9kZXNj
LCBjb25zdCBzdHJ1Y3QgcGlycSAqcGlycSwKLS0tIGEveGVuL2luY2x1ZGUv
YXNtLXg4Ni9wMm0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5o
CkBAIC05MDUsNiArOTA1LDM0IEBAIHN0cnVjdCBwMm1fZG9tYWluICpwMm1f
Z2V0X2FsdHAybShzdHJ1Y3QKIHN0YXRpYyBpbmxpbmUgdm9pZCBwMm1fYWx0
cDJtX2NoZWNrKHN0cnVjdCB2Y3B1ICp2LCB1aW50MTZfdCBpZHgpIHt9CiAj
ZW5kaWYKIAorLyogcDJtIGFjY2VzcyB0byBJT01NVSBmbGFncyAqLworc3Rh
dGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2FjY2Vzc190b19pb21tdV9m
bGFncyhwMm1fYWNjZXNzX3QgcDJtYSkKK3sKKyAgICBzd2l0Y2ggKCBwMm1h
ICkKKyAgICB7CisgICAgY2FzZSBwMm1fYWNjZXNzX3J3OgorICAgIGNhc2Ug
cDJtX2FjY2Vzc19yd3g6CisgICAgICAgIHJldHVybiBJT01NVUZfcmVhZGFi
bGUgfCBJT01NVUZfd3JpdGFibGU7CisKKyAgICBjYXNlIHAybV9hY2Nlc3Nf
cjoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcng6CisgICAgY2FzZSBwMm1fYWNj
ZXNzX3J4MnJ3OgorICAgICAgICByZXR1cm4gSU9NTVVGX3JlYWRhYmxlOwor
CisgICAgY2FzZSBwMm1fYWNjZXNzX3c6CisgICAgY2FzZSBwMm1fYWNjZXNz
X3d4OgorICAgICAgICByZXR1cm4gSU9NTVVGX3dyaXRhYmxlOworCisgICAg
Y2FzZSBwMm1fYWNjZXNzX246CisgICAgY2FzZSBwMm1fYWNjZXNzX3g6Cisg
ICAgY2FzZSBwMm1fYWNjZXNzX24ycnd4OgorICAgICAgICByZXR1cm4gMDsK
KyAgICB9CisKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKKyAgICByZXR1
cm4gMDsKK30KKwogLyoKICAqIHAybSB0eXBlIHRvIElPTU1VIGZsYWdzCiAg
Ki8KQEAgLTkyNiw5ICs5NTQsMTAgQEAgc3RhdGljIGlubGluZSB1bnNpZ25l
ZCBpbnQgcDJtX2dldF9pb21tdQogICAgICAgICBmbGFncyA9IElPTU1VRl9y
ZWFkYWJsZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBwMm1fbW1pb19k
aXJlY3Q6Ci0gICAgICAgIGZsYWdzID0gSU9NTVVGX3JlYWRhYmxlOwotICAg
ICAgICBpZiAoICFyYW5nZXNldF9jb250YWluc19zaW5nbGV0b24obW1pb19y
b19yYW5nZXMsIG1mbl94KG1mbikpICkKLSAgICAgICAgICAgIGZsYWdzIHw9
IElPTU1VRl93cml0YWJsZTsKKyAgICAgICAgZmxhZ3MgPSBwMm1fYWNjZXNz
X3RvX2lvbW11X2ZsYWdzKHAybWEpOworICAgICAgICBpZiAoIChmbGFncyAm
IElPTU1VRl93cml0YWJsZSkgJiYKKyAgICAgICAgICAgICByYW5nZXNldF9j
b250YWluc19zaW5nbGV0b24obW1pb19yb19yYW5nZXMsIG1mbl94KG1mbikp
ICkKKyAgICAgICAgICAgIGZsYWdzICY9IH5JT01NVUZfd3JpdGFibGU7CiAg
ICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIGZsYWdzID0g
MDsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfbWFwLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X21hcC5jCkBAIC00MzAsMzggKzQzMCw0OSBAQCBpbnQgYW1kX2lvbW11
X2ZsdXNoX2lvdGxiX2FsbChzdHJ1Y3QgZG9tCiAgICAgcmV0dXJuIDA7CiB9
CiAKLWludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKHN0
cnVjdCBkb21haW4gKmRvbWFpbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgcGh5c19hZGRyLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBz
aXplLCBpbnQgaXcsIGludCBpcikKK2ludCBhbWRfaW9tbXVfcmVzZXJ2ZV9k
b21haW5fdW5pdHlfbWFwKHN0cnVjdCBkb21haW4gKmQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgaXZy
c191bml0eV9tYXAgKm1hcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKQogewotICAgIHVuc2ln
bmVkIGxvbmcgbnBhZ2VzLCBpOwotICAgIHVuc2lnbmVkIGxvbmcgZ2ZuOwot
ICAgIHVuc2lnbmVkIGludCBmbGFncyA9ICEhaXI7Ci0gICAgdW5zaWduZWQg
aW50IGZsdXNoX2ZsYWdzID0gMDsKLSAgICBpbnQgcnQgPSAwOwotCi0gICAg
aWYgKCBpdyApCi0gICAgICAgIGZsYWdzIHw9IElPTU1VRl93cml0YWJsZTsK
LQotICAgIG5wYWdlcyA9IHJlZ2lvbl90b19wYWdlcyhwaHlzX2FkZHIsIHNp
emUpOwotICAgIGdmbiA9IHBoeXNfYWRkciA+PiBQQUdFX1NISUZUOwotICAg
IGZvciAoIGkgPSAwOyBpIDwgbnBhZ2VzOyBpKysgKQorICAgIGludCByYzsK
KworICAgIGlmICggZCA9PSBkb21faW8gKQorICAgICAgICByZXR1cm4gMDsK
KworICAgIGZvciAoIHJjID0gMDsgIXJjICYmIG1hcDsgbWFwID0gbWFwLT5u
ZXh0ICkKICAgICB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgZnJhbWUgPSBn
Zm4gKyBpOworICAgICAgICBwMm1fYWNjZXNzX3QgcDJtYSA9IHAybV9hY2Nl
c3NfbjsKKworICAgICAgICBpZiAoIG1hcC0+cmVhZCApCisgICAgICAgICAg
ICBwMm1hIHw9IHAybV9hY2Nlc3NfcjsKKyAgICAgICAgaWYgKCBtYXAtPndy
aXRlICkKKyAgICAgICAgICAgIHAybWEgfD0gcDJtX2FjY2Vzc193OwogCi0g
ICAgICAgIHJ0ID0gYW1kX2lvbW11X21hcF9wYWdlKGRvbWFpbiwgX2Rmbihm
cmFtZSksIF9tZm4oZnJhbWUpLCBmbGFncywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJmZsdXNoX2ZsYWdzKTsKLSAgICAgICAgaWYgKCBy
dCAhPSAwICkKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICByYyA9IGlv
bW11X2lkZW50aXR5X21hcHBpbmcoZCwgcDJtYSwgbWFwLT5hZGRyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRyICsg
bWFwLT5sZW5ndGggLSAxLCBmbGFnKTsKICAgICB9CiAKLSAgICAvKiBVc2Ug
d2hpbGUtYnJlYWsgdG8gYXZvaWQgY29tcGlsZXIgd2FybmluZyAqLwotICAg
IHdoaWxlICggZmx1c2hfZmxhZ3MgJiYKLSAgICAgICAgICAgIGFtZF9pb21t
dV9mbHVzaF9pb3RsYl9wYWdlcyhkb21haW4sIF9kZm4oZ2ZuKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBucGFnZXMsIGZs
dXNoX2ZsYWdzKSApCi0gICAgICAgIGJyZWFrOworICAgIHJldHVybiByYzsK
K30KKworaW50IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV91bm1h
cChzdHJ1Y3QgZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgaXZyc191bml0eV9tYXAg
Km1hcCkKK3sKKyAgICBpbnQgcmM7CisKKyAgICBpZiAoIGQgPT0gZG9tX2lv
ICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCByYyA9IDA7IG1h
cDsgbWFwID0gbWFwLT5uZXh0ICkKKyAgICB7CisgICAgICAgIGludCByZXQg
PSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQsIHAybV9hY2Nlc3NfeCwgbWFw
LT5hZGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtYXAtPmFkZHIgKyBtYXAtPmxlbmd0aCAtIDEsIDApOworCisgICAg
ICAgIGlmICggcmV0ICYmIHJldCAhPSAtRU5PRU5UICYmICFyYyApCisgICAg
ICAgICAgICByYyA9IHJldDsKKyAgICB9CiAKLSAgICByZXR1cm4gcnQ7Cisg
ICAgcmV0dXJuIHJjOwogfQogCiBpbnQgX19pbml0IGFtZF9pb21tdV9xdWFy
YW50aW5lX2luaXQoc3RydWN0IGRvbWFpbiAqZCkKLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4v
ZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0z
MzAsNiArMzMwLDcgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3Ry
dWN0IGRvbWFpbgogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwogICAg
IGludCBiZGYsIHJjOwogICAgIHN0cnVjdCBkb21haW5faW9tbXUgKnQgPSBk
b21faW9tbXUodGFyZ2V0KTsKKyAgICBjb25zdCBzdHJ1Y3QgaXZyc19tYXBw
aW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHBkZXYt
PnNlZyk7CiAKICAgICBiZGYgPSBQQ0lfQkRGMihwZGV2LT5idXMsIHBkZXYt
PmRldmZuKTsKICAgICBpb21tdSA9IGZpbmRfaW9tbXVfZm9yX2RldmljZShw
ZGV2LT5zZWcsIGJkZik7CkBAIC0zNDQsMTAgKzM0NSwyNCBAQCBzdGF0aWMg
aW50IHJlYXNzaWduX2RldmljZShzdHJ1Y3QgZG9tYWluCiAKICAgICBhbWRf
aW9tbXVfZGlzYWJsZV9kb21haW5fZGV2aWNlKHNvdXJjZSwgaW9tbXUsIGRl
dmZuLCBwZGV2KTsKIAotICAgIGlmICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4g
KQorICAgIC8qCisgICAgICogSWYgdGhlIGRldmljZSBiZWxvbmdzIHRvIHRo
ZSBoYXJkd2FyZSBkb21haW4sIGFuZCBpdCBoYXMgYSB1bml0eSBtYXBwaW5n
LAorICAgICAqIGRvbid0IHJlbW92ZSBpdCBmcm9tIHRoZSBoYXJkd2FyZSBk
b21haW4sIGJlY2F1c2UgQklPUyBtYXkgcmVmZXJlbmNlIHRoYXQKKyAgICAg
KiBtYXBwaW5nLgorICAgICAqLworICAgIGlmICggIWlzX2hhcmR3YXJlX2Rv
bWFpbihzb3VyY2UpICkKKyAgICB7CisgICAgICAgIHJjID0gYW1kX2lvbW11
X3Jlc2VydmVfZG9tYWluX3VuaXR5X3VubWFwKAorICAgICAgICAgICAgICAg
ICBzb3VyY2UsCisgICAgICAgICAgICAgICAgIGl2cnNfbWFwcGluZ3NbZ2V0
X2RtYV9yZXF1ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYpXS51bml0eV9tYXAp
OworICAgICAgICBpZiAoIHJjICkKKyAgICAgICAgICAgIHJldHVybiByYzsK
KyAgICB9CisKKyAgICBpZiAoIGRldmZuID09IHBkZXYtPmRldmZuICYmIHBk
ZXYtPmRvbWFpbiAhPSBkb21faW8gKQogICAgIHsKLSAgICAgICAgbGlzdF9t
b3ZlKCZwZGV2LT5kb21haW5fbGlzdCwgJnRhcmdldC0+cGRldl9saXN0KTsK
LSAgICAgICAgcGRldi0+ZG9tYWluID0gdGFyZ2V0OworICAgICAgICBsaXN0
X21vdmUoJnBkZXYtPmRvbWFpbl9saXN0LCAmZG9tX2lvLT5wZGV2X2xpc3Qp
OworICAgICAgICBwZGV2LT5kb21haW4gPSBkb21faW87CiAgICAgfQogCiAg
ICAgcmMgPSBhbGxvY2F0ZV9kb21haW5fcmVzb3VyY2VzKHQpOwpAQCAtMzU5
LDYgKzM3NCwxMiBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2RldmljZShzdHJ1
Y3QgZG9tYWluCiAgICAgICAgICAgICAgICAgICAgIHBkZXYtPnNlZywgcGRl
di0+YnVzLCBQQ0lfU0xPVChkZXZmbiksIFBDSV9GVU5DKGRldmZuKSwKICAg
ICAgICAgICAgICAgICAgICAgc291cmNlLT5kb21haW5faWQsIHRhcmdldC0+
ZG9tYWluX2lkKTsKIAorICAgIGlmICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4g
JiYgcGRldi0+ZG9tYWluICE9IHRhcmdldCApCisgICAgeworICAgICAgICBs
aXN0X21vdmUoJnBkZXYtPmRvbWFpbl9saXN0LCAmdGFyZ2V0LT5wZGV2X2xp
c3QpOworICAgICAgICBwZGV2LT5kb21haW4gPSB0YXJnZXQ7CisgICAgfQor
CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTM2OSwyMCArMzkwLDI4IEBAIHN0
YXRpYyBpbnQgYW1kX2lvbW11X2Fzc2lnbl9kZXZpY2Uoc3RydWMKICAgICBz
dHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJz
X21hcHBpbmdzKHBkZXYtPnNlZyk7CiAgICAgaW50IGJkZiA9IFBDSV9CREYy
KHBkZXYtPmJ1cywgZGV2Zm4pOwogICAgIGludCByZXFfaWQgPSBnZXRfZG1h
X3JlcXVlc3Rvcl9pZChwZGV2LT5zZWcsIGJkZik7Ci0gICAgY29uc3Qgc3Ry
dWN0IGl2cnNfdW5pdHlfbWFwICp1bml0eV9tYXA7CisgICAgaW50IHJjID0g
YW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAgICAg
ICAgICAgICAgZCwgaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcCwg
ZmxhZyk7CisKKyAgICBpZiAoICFyYyApCisgICAgICAgIHJjID0gcmVhc3Np
Z25fZGV2aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2Zm4sIHBkZXYpOwogCi0g
ICAgZm9yICggdW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVu
aXR5X21hcDsgdW5pdHlfbWFwOwotICAgICAgICAgIHVuaXR5X21hcCA9IHVu
aXR5X21hcC0+bmV4dCApCisgICAgaWYgKCByYyAmJiAhaXNfaGFyZHdhcmVf
ZG9tYWluKGQpICkKICAgICB7Ci0gICAgICAgIGludCByYyA9IGFtZF9pb21t
dV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoCi0gICAgICAgICAgICAgICAg
ICAgICBkLCB1bml0eV9tYXAtPmFkZHIsIHVuaXR5X21hcC0+bGVuZ3RoLAot
ICAgICAgICAgICAgICAgICAgICAgdW5pdHlfbWFwLT53cml0ZSwgdW5pdHlf
bWFwLT5yZWFkKTsKKyAgICAgICAgaW50IHJldCA9IGFtZF9pb21tdV9yZXNl
cnZlX2RvbWFpbl91bml0eV91bm1hcCgKKyAgICAgICAgICAgICAgICAgICAg
ICBkLCBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwKTsKIAotICAg
ICAgICBpZiAoIHJjICkKLSAgICAgICAgICAgIHJldHVybiByYzsKKyAgICAg
ICAgaWYgKCByZXQgKQorICAgICAgICB7CisgICAgICAgICAgICBwcmludGso
WEVOTE9HX0VSUiAiQU1ELVZpOiAiCisgICAgICAgICAgICAgICAgICAgInVu
aXR5LXVubWFwIGZvciAlcGQvJTA0eDolMDJ4OiUwMnguJXUgZmFpbGVkICgl
ZClcbiIsCisgICAgICAgICAgICAgICAgICAgZCwgcGRldi0+c2VnLCBwZGV2
LT5idXMsCisgICAgICAgICAgICAgICAgICAgUENJX1NMT1QoZGV2Zm4pLCBQ
Q0lfRlVOQyhkZXZmbiksIHJldCk7CisgICAgICAgICAgICBkb21haW5fY3Jh
c2goZCk7CisgICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gcmVhc3Np
Z25fZGV2aWNlKHBkZXYtPmRvbWFpbiwgZCwgZGV2Zm4sIHBkZXYpOworICAg
IHJldHVybiByYzsKIH0KIAogc3RhdGljIHZvaWQgZGVhbGxvY2F0ZV9uZXh0
X3BhZ2VfdGFibGUoc3RydWN0IHBhZ2VfaW5mbyAqcGcsIGludCBsZXZlbCkK
QEAgLTQ0MSw2ICs0NzAsNyBAQCBzdGF0aWMgdm9pZCBkZWFsbG9jYXRlX2lv
bW11X3BhZ2VfdGFibGVzCiAKIHN0YXRpYyB2b2lkIGFtZF9pb21tdV9kb21h
aW5fZGVzdHJveShzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIGlvbW11X2lk
ZW50aXR5X21hcF90ZWFyZG93bihkKTsKICAgICBkZWFsbG9jYXRlX2lvbW11
X3BhZ2VfdGFibGVzKGQpOwogICAgIGFtZF9pb21tdV9mbHVzaF9hbGxfcGFn
ZXMoZCk7CiB9Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9h
bWQtaW9tbXUtcHJvdG8uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2
bS9zdm0vYW1kLWlvbW11LXByb3RvLmgKQEAgLTY0LDggKzY0LDEwIEBAIGlu
dCBfX211c3RfY2hlY2sgYW1kX2lvbW11X3VubWFwX3BhZ2Uoc3QKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
ICpmbHVzaF9mbGFncyk7CiBpbnQgX19tdXN0X2NoZWNrIGFtZF9pb21tdV9h
bGxvY19yb290KHN0cnVjdCBkb21haW5faW9tbXUgKmhkKTsKIGludCBhbWRf
aW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKHN0cnVjdCBkb21haW4g
KmRvbWFpbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHBhZGRyX3QgcGh5c19hZGRyLCB1bnNpZ25lZCBsb25nIHNpemUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaXcs
IGludCBpcik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKm1hcCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCBmbGFnKTsKK2ludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlf
dW5tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGl2cnNfdW5pdHlf
bWFwICptYXApOwogaW50IF9fbXVzdF9jaGVjayBhbWRfaW9tbXVfZmx1c2hf
aW90bGJfcGFnZXMoc3RydWN0IGRvbWFpbiAqZCwgZGZuX3QgZGZuLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50IHBhZ2VfY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmx1c2hfZmxh
Z3MpOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9hY3BpLmMKKysrIGIveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2FjcGkuYwpAQCAtMTE4
LDEyICsxMTgsOCBAQCBzdGF0aWMgc3RydWN0IGFtZF9pb21tdSAqIF9faW5p
dCBmaW5kX2lvCiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlc2VydmVfaW9t
bXVfZXhjbHVzaW9uX3JhbmdlKAotICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlv
bW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBsaW1pdCwKLSAgICBib29s
IGFsbCwgYm9vbCBpdywgYm9vbCBpcikKKyAgICBzdHJ1Y3QgYW1kX2lvbW11
ICppb21tdSwgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGFs
bCkKIHsKLSAgICBpZiAoICFpciB8fCAhaXcgKQotICAgICAgICByZXR1cm4g
LUVQRVJNOwotCiAgICAgLyogbmVlZCB0byBleHRlbmQgZXhjbHVzaW9uIHJh
bmdlPyAqLwogICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgKQog
ICAgIHsKQEAgLTE1MiwxNCArMTQ4LDE4IEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl8KIHsKICAgICBzdHJ1Y3QgaXZyc19t
YXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJzX21hcHBpbmdzKHNl
Zyk7CiAgICAgc3RydWN0IGl2cnNfdW5pdHlfbWFwICp1bml0eV9tYXAgPSBp
dnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwOworICAgIGludCBwYWdpbmdf
bW9kZSA9IGFtZF9pb21tdV9nZXRfcGFnaW5nX21vZGUoUEZOX1VQKGJhc2Ug
KyBsZW5ndGgpKTsKKworICAgIGlmICggcGFnaW5nX21vZGUgPCAwICkKKyAg
ICAgICAgcmV0dXJuIHBhZ2luZ19tb2RlOwogCiAgICAgLyogQ2hlY2sgZm9y
IG92ZXJsYXBzLiAqLwogICAgIGZvciAoIDsgdW5pdHlfbWFwOyB1bml0eV9t
YXAgPSB1bml0eV9tYXAtPm5leHQgKQogICAgIHsKICAgICAgICAgLyoKICAg
ICAgICAgICogRXhhY3QgbWF0Y2hlcyBhcmUgb2theS4gVGhpcyBjYW4gaW4g
cGFydGljdWxhciBoYXBwZW4gd2hlbgotICAgICAgICAgKiByZWdpc3Rlcl9l
eGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgpIGNhbGxzIGhlcmUgdHdpY2Ug
Zm9yIHRoZQotICAgICAgICAgKiBzYW1lIChzLGIsZCxmKS4KKyAgICAgICAg
ICogcmVnaXN0ZXJfcmFuZ2VfZm9yX2RldmljZSgpIGNhbGxzIGhlcmUgdHdp
Y2UgZm9yIHRoZSBzYW1lCisgICAgICAgICAqIChzLGIsZCxmKS4KICAgICAg
ICAgICovCiAgICAgICAgIGlmICggYmFzZSA9PSB1bml0eV9tYXAtPmFkZHIg
JiYgbGVuZ3RoID09IHVuaXR5X21hcC0+bGVuZ3RoICYmCiAgICAgICAgICAg
ICAgaXIgPT0gdW5pdHlfbWFwLT5yZWFkICYmIGl3ID09IHVuaXR5X21hcC0+
d3JpdGUgKQpAQCAtMTg3LDU1ICsxODcsNTIgQEAgc3RhdGljIGludCBfX2lu
aXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yXwogICAgIHVuaXR5X21hcC0+bmV4
dCA9IGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9tYXA7CiAgICAgaXZyc19t
YXBwaW5nc1tiZGZdLnVuaXR5X21hcCA9IHVuaXR5X21hcDsKIAorICAgIGlm
ICggcGFnaW5nX21vZGUgPiBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2RlICkK
KyAgICAgICAgYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSA9IHBhZ2luZ19t
b2RlOworCiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgX19pbml0
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCi0g
ICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25nIGxpbWl0LCB1
OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9yYW5n
ZV9mb3JfYWxsX2RldmljZXMoCisgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikKIHsK
ICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCi0gICAgdW5zaWduZWQgbG9u
ZyByYW5nZV90b3AsIGlvbW11X3RvcCwgbGVuZ3RoOwogICAgIHN0cnVjdCBh
bWRfaW9tbXUgKmlvbW11OwotICAgIHVuc2lnbmVkIGludCBiZGY7CiAgICAg
aW50IHJjID0gMDsKIAogICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJh
bmdlIGluc2lkZSBvZiBJT01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICov
CiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0
byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICByYW5nZV90b3AgPSBsaW1pdCAr
IFBBR0VfU0laRTsKLSAgICBpb21tdV90b3AgPSBtYXhfcGFnZSAqIFBBR0Vf
U0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21tdV90b3AgKQotICAgIHsKLSAg
ICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21tdV90b3AgKQotICAgICAgICAg
ICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwotICAgICAgICBsZW5ndGggPSBy
YW5nZV90b3AgLSBiYXNlOwotICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0
eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCi0gICAgICAg
IC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1
c2lvbiByYW5nZSAqLwotICAgICAgICBmb3IgKCBiZGYgPSAwOyAhcmMgJiYg
YmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysgKQotICAgICAgICAgICAg
cmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywgYmRmLCBi
YXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0gICAgICAgIC8qIHB1c2ggJ2Jhc2Un
IGp1c3Qgb3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKi8KLSAg
ICAgICAgYmFzZSA9IGlvbW11X3RvcDsKLSAgICB9Ci0gICAgLyogcmVnaXN0
ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzICovCi0gICAgaWYg
KCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkKKyAgICBpZiAoIGV4Y2x1
c2lvbiApCiAgICAgewogICAgICAgICBmb3JfZWFjaF9hbWRfaW9tbXUoIGlv
bW11ICkKICAgICAgICAgewotICAgICAgICAgICAgcmMgPSByZXNlcnZlX2lv
bW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRy
dWUgLyogYWxsICovLCBpdywgaXIpOwotICAgICAgICAgICAgaWYgKCByYyAp
Ci0gICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpbnQgcmV0
ID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2Us
IGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICovKTsKKworICAgICAgICAg
ICAgaWYgKCByZXQgJiYgIXJjICkKKyAgICAgICAgICAgICAgICByYyA9IHJl
dDsKICAgICAgICAgfQogICAgIH0KIAorICAgIGlmICggIWV4Y2x1c2lvbiB8
fCByYyApCisgICAgeworICAgICAgICBwYWRkcl90IGxlbmd0aCA9IGxpbWl0
ICsgUEFHRV9TSVpFIC0gYmFzZTsKKyAgICAgICAgdW5zaWduZWQgaW50IGJk
ZjsKKworICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFn
ZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCisgICAgICAgIGZvciAoIGJkZiA9
IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisr
ICkKKyAgICAgICAgICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2Rl
dmljZShzZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOworICAgIH0K
KwogICAgIHJldHVybiByYzsKIH0KIAotc3RhdGljIGludCBfX2luaXQgcmVn
aXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoCi0gICAgdTE2IGJk
ZiwgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25nIGxpbWl0LCB1
OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9yYW5n
ZV9mb3JfZGV2aWNlKAorICAgIHVuc2lnbmVkIGludCBiZGYsIHBhZGRyX3Qg
YmFzZSwgcGFkZHJfdCBsaW1pdCwKKyAgICBib29sIGl3LCBib29sIGlyLCBi
b29sIGV4Y2x1c2lvbikKIHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICov
CiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhzZWcpOwotICAgIHVuc2lnbmVkIGxvbmcgcmFu
Z2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lv
bW11ICppb21tdTsKICAgICB1MTYgcmVxOwogICAgIGludCByYyA9IDA7CkBA
IC0yNDksMjcgKzI0NiwxOSBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rl
cl9leGNsdXNpb25fcmFuCiAgICAgcmVxID0gaXZyc19tYXBwaW5nc1tiZGZd
LmR0ZV9yZXF1ZXN0b3JfaWQ7CiAKICAgICAvKiBub3RlOiAnbGltaXQnIHBh
cmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwotICAg
IHJhbmdlX3RvcCA9IGxpbWl0ICsgUEFHRV9TSVpFOwotICAgIGlvbW11X3Rv
cCA9IG1heF9wYWdlICogUEFHRV9TSVpFOwotICAgIGlmICggYmFzZSA8IGlv
bW11X3RvcCApCi0gICAgewotICAgICAgICBpZiAoIHJhbmdlX3RvcCA+IGlv
bW11X3RvcCApCi0gICAgICAgICAgICByYW5nZV90b3AgPSBpb21tdV90b3A7
Ci0gICAgICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAtIGJhc2U7CisgICAgaWYg
KCBleGNsdXNpb24gKQorICAgICAgICByYyA9IHJlc2VydmVfaW9tbXVfZXhj
bHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAvKiBhbGwg
Ki8pOworICAgIGlmICggIWV4Y2x1c2lvbiB8fCByYyApCisgICAgeworICAg
ICAgICBwYWRkcl90IGxlbmd0aCA9IGxpbWl0ICsgUEFHRV9TSVpFIC0gYmFz
ZTsKKwogICAgICAgICAvKiByZXNlcnZlIHVuaXR5LW1hcHBlZCBwYWdlIGVu
dHJpZXMgZm9yIGRldmljZSAqLwotICAgICAgICAvKiBub3RlOiB0aGVzZSBl
bnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNpb24gcmFuZ2UgKi8KICAg
ICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywg
YmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcikgPzoKICAgICAgICAgICAgICBy
ZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNlZywgcmVxLCBiYXNlLCBs
ZW5ndGgsIGl3LCBpcik7Ci0KLSAgICAgICAgLyogcHVzaCAnYmFzZScganVz
dCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSAqLwotICAgICAg
ICBiYXNlID0gaW9tbXVfdG9wOwogICAgIH0KLQotICAgIC8qIHJlZ2lzdGVy
IElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyBmb3IgZGV2aWNlICov
Ci0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICApCisgICAg
ZWxzZQogICAgIHsKLSAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgLyogYWxsICov
LCBpdywgaXIpOwogICAgICAgICBpdnJzX21hcHBpbmdzW2JkZl0uZHRlX2Fs
bG93X2V4Y2x1c2lvbiA9IHRydWU7CiAgICAgICAgIGl2cnNfbWFwcGluZ3Nb
cmVxXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1ZTsKICAgICB9CkBAIC0y
NzcsNTMgKzI2Niw0MiBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9l
eGNsdXNpb25fcmFuCiAgICAgcmV0dXJuIHJjOwogfQogCi1zdGF0aWMgaW50
IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2lvbW11X2Rl
dmljZXMoCi0gICAgc3RydWN0IGFtZF9pb21tdSAqaW9tbXUsCi0gICAgdW5z
aWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25nIGxpbWl0LCB1OCBpdywg
dTggaXIpCitzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9yYW5nZV9mb3Jf
aW9tbXVfZGV2aWNlcygKKyAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwg
cGFkZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LAorICAgIGJvb2wgaXcsIGJv
b2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewotICAgIHVuc2lnbmVkIGxvbmcg
cmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKKyAgICAvKiBub3RlOiAn
bGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2UtYWxpZ25l
ZCAqLworICAgIHBhZGRyX3QgbGVuZ3RoID0gbGltaXQgKyBQQUdFX1NJWkUg
LSBiYXNlOwogICAgIHVuc2lnbmVkIGludCBiZGY7CiAgICAgdTE2IHJlcTsK
LSAgICBpbnQgcmMgPSAwOworICAgIGludCByYzsKIAotICAgIC8qIGlzIHBh
cnQgb2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJT01NVSB2aXJ0dWFs
IGFkZHJlc3Mgc3BhY2U/ICovCi0gICAgLyogbm90ZTogJ2xpbWl0JyBwYXJh
bWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICBy
YW5nZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsKLSAgICBpb21tdV90b3Ag
PSBtYXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21t
dV90b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21t
dV90b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwot
ICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwotICAgICAgICAv
KiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBk
ZXZpY2VzICovCi0gICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJl
IHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAgICBmb3Ig
KCBiZGYgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRm
KysgKQotICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIGlvbW11ID09IGZp
bmRfaW9tbXVfZm9yX2RldmljZShpb21tdS0+c2VnLCBiZGYpICkKLSAgICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXEgPSBnZXRfaXZyc19tYXBw
aW5ncyhpb21tdS0+c2VnKVtiZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7Ci0gICAg
ICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNl
KGlvbW11LT5zZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIp
ID86Ci0gICAgICAgICAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9m
b3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpdywgaXIpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAg
ICAgLyogcHVzaCAnYmFzZScganVzdCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRk
cmVzcyBzcGFjZSAqLwotICAgICAgICBiYXNlID0gaW9tbXVfdG9wOworICAg
IGlmICggZXhjbHVzaW9uICkKKyAgICB7CisgICAgICAgIHJjID0gcmVzZXJ2
ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LCB0
cnVlIC8qIGFsbCAqLyk7CisgICAgICAgIGlmICggIXJjICkKKyAgICAgICAg
ICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8qIHJlZ2lzdGVyIElPTU1V
IGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwotICAgIGlmICggIXJjICYm
IGxpbWl0ID49IGlvbW11X3RvcCApCi0gICAgICAgIHJjID0gcmVzZXJ2ZV9p
b21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUg
LyogYWxsICovLCBpdywgaXIpOworICAgIC8qIHJlc2VydmUgdW5pdHktbWFw
cGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAqLworICAgIGZvciAoIGJk
ZiA9IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJk
ZisrICkKKyAgICB7CisgICAgICAgIGlmICggaW9tbXUgIT0gZmluZF9pb21t
dV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQorICAgICAgICAgICAg
Y29udGludWU7CisKKyAgICAgICAgcmVxID0gZ2V0X2l2cnNfbWFwcGluZ3Mo
aW9tbXUtPnNlZylbYmRmXS5kdGVfcmVxdWVzdG9yX2lkOworICAgICAgICBy
YyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywg
YmRmLCBiYXNlLCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpID86CisgICAgICAgICAgICAgcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShpb21tdS0+c2VnLCByZXEsIGJh
c2UsIGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGl3LCBpcik7CisgICAgfQogCiAgICAgcmV0dXJuIHJjOwog
fQogCiBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9zZWxl
Y3QoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19tZW1vcnkgKml2bWRf
YmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25n
IGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJfdCBiYXNlLCBwYWRk
cl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikK
IHsKICAgICB1MTYgYmRmOwogCkBAIC0zMzQsMTIgKzMxMiwxMiBAQCBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9zZWxlCiAgICAgICAg
IHJldHVybiAtRU5PREVWOwogICAgIH0KIAotICAgIHJldHVybiByZWdpc3Rl
cl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZShiZGYsIGJhc2UsIGxpbWl0
LCBpdywgaXIpOworICAgIHJldHVybiByZWdpc3Rlcl9yYW5nZV9mb3JfZGV2
aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpciwgZXhjbHVzaW9uKTsKIH0K
IAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9kZXZpY2VfcmFuZ2Uo
CiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19tZW1vcnkgKml2bWRfYmxv
Y2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25nIGxp
bWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikKIHsK
ICAgICB1bnNpZ25lZCBpbnQgZmlyc3RfYmRmLCBsYXN0X2JkZiwgYmRmOwog
ICAgIGludCBlcnJvcjsKQEAgLTM2MSwxNSArMzM5LDE1IEBAIHN0YXRpYyBp
bnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3JhbmcKICAgICB9CiAKICAg
ICBmb3IgKCBiZGYgPSBmaXJzdF9iZGYsIGVycm9yID0gMDsgKGJkZiA8PSBs
YXN0X2JkZikgJiYgIWVycm9yOyBiZGYrKyApCi0gICAgICAgIGVycm9yID0g
cmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZpY2UoCi0gICAgICAg
ICAgICBiZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgICAgICBlcnJv
ciA9IHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2UoCisgICAgICAgICAgICBi
ZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBy
ZXR1cm4gZXJyb3I7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2
bWRfZGV2aWNlX2lvbW11KAogICAgIGNvbnN0IHN0cnVjdCBhY3BpX2l2cnNf
bWVtb3J5ICppdm1kX2Jsb2NrLAotICAgIHVuc2lnbmVkIGxvbmcgYmFzZSwg
dW5zaWduZWQgbG9uZyBsaW1pdCwgdTggaXcsIHU4IGlyKQorICAgIHBhZGRy
X3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwgYm9vbCBpdywgYm9vbCBpciwgYm9v
bCBleGNsdXNpb24pCiB7CiAgICAgaW50IHNlZyA9IDA7IC8qIFhYWCAqLwog
ICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwpAQCAtMzg0LDE0ICszNjIs
MTQgQEAgc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9kZXZpY2VfaW9t
bQogICAgICAgICByZXR1cm4gLUVOT0RFVjsKICAgICB9CiAKLSAgICByZXR1
cm4gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9pb21tdV9kZXZpY2Vz
KAotICAgICAgICBpb21tdSwgYmFzZSwgbGltaXQsIGl3LCBpcik7CisgICAg
cmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21tdV9kZXZpY2VzKAorICAg
ICAgICBpb21tdSwgYmFzZSwgbGltaXQsIGl3LCBpciwgZXhjbHVzaW9uKTsK
IH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9ibG9jayhjb25z
dCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaykKIHsKICAg
ICB1bnNpZ25lZCBsb25nIHN0YXJ0X2FkZHIsIG1lbV9sZW5ndGgsIGJhc2Us
IGxpbWl0OwotICAgIHU4IGl3LCBpcjsKKyAgICBib29sIGl3ID0gdHJ1ZSwg
aXIgPSB0cnVlLCBleGNsdXNpb24gPSBmYWxzZTsKIAogICAgIGlmICggaXZt
ZF9ibG9jay0+aGVhZGVyLmxlbmd0aCA8IHNpemVvZigqaXZtZF9ibG9jaykg
KQogICAgIHsKQEAgLTQwOCwxMyArMzg2LDExIEBAIHN0YXRpYyBpbnQgX19p
bml0IHBhcnNlX2l2bWRfYmxvY2soY29uc3QKICAgICAgICAgICAgICAgICAg
ICAgaXZtZF9ibG9jay0+aGVhZGVyLnR5cGUsIHN0YXJ0X2FkZHIsIG1lbV9s
ZW5ndGgpOwogCiAgICAgaWYgKCBpdm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3Mg
JiBBQ1BJX0lWTURfRVhDTFVTSU9OX1JBTkdFICkKLSAgICAgICAgaXcgPSBp
ciA9IElPTU1VX0NPTlRST0xfRU5BQkxFRDsKKyAgICAgICAgZXhjbHVzaW9u
ID0gdHJ1ZTsKICAgICBlbHNlIGlmICggaXZtZF9ibG9jay0+aGVhZGVyLmZs
YWdzICYgQUNQSV9JVk1EX1VOSVRZICkKICAgICB7Ci0gICAgICAgIGl3ID0g
aXZtZF9ibG9jay0+aGVhZGVyLmZsYWdzICYgQUNQSV9JVk1EX1JFQUQgPwot
ICAgICAgICAgICAgSU9NTVVfQ09OVFJPTF9FTkFCTEVEIDogSU9NTVVfQ09O
VFJPTF9ESVNBQkxFRDsKLSAgICAgICAgaXIgPSBpdm1kX2Jsb2NrLT5oZWFk
ZXIuZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEUgPwotICAgICAgICAgICAgSU9N
TVVfQ09OVFJPTF9FTkFCTEVEIDogSU9NTVVfQ09OVFJPTF9ESVNBQkxFRDsK
KyAgICAgICAgaXcgPSBpdm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJ
X0lWTURfUkVBRDsKKyAgICAgICAgaXIgPSBpdm1kX2Jsb2NrLT5oZWFkZXIu
ZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEU7CiAgICAgfQogICAgIGVsc2UKICAg
ICB7CkBAIC00MjUsMjAgKzQwMSwyMCBAQCBzdGF0aWMgaW50IF9faW5pdCBw
YXJzZV9pdm1kX2Jsb2NrKGNvbnN0CiAgICAgc3dpdGNoKCBpdm1kX2Jsb2Nr
LT5oZWFkZXIudHlwZSApCiAgICAgewogICAgIGNhc2UgQUNQSV9JVlJTX1RZ
UEVfTUVNT1JZX0FMTDoKLSAgICAgICAgcmV0dXJuIHJlZ2lzdGVyX2V4Y2x1
c2lvbl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCi0gICAgICAgICAgICBiYXNl
LCBsaW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyX3Jh
bmdlX2Zvcl9hbGxfZGV2aWNlcygKKyAgICAgICAgICAgIGJhc2UsIGxpbWl0
LCBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBjYXNlIEFDUElfSVZSU19U
WVBFX01FTU9SWV9PTkU6Ci0gICAgICAgIHJldHVybiBwYXJzZV9pdm1kX2Rl
dmljZV9zZWxlY3QoaXZtZF9ibG9jaywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAg
ICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdChpdm1kX2Js
b2NrLCBiYXNlLCBsaW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBjYXNl
IEFDUElfSVZSU19UWVBFX01FTU9SWV9SQU5HRToKLSAgICAgICAgcmV0dXJu
IHBhcnNlX2l2bWRfZGV2aWNlX3JhbmdlKGl2bWRfYmxvY2ssCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1pdCwg
aXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3Jh
bmdlKGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyLCBleGNsdXNpb24pOwog
CiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9NRU1PUllfSU9NTVU6Ci0gICAg
ICAgIHJldHVybiBwYXJzZV9pdm1kX2RldmljZV9pb21tdShpdm1kX2Jsb2Nr
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFz
ZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIHJldHVybiBwYXJzZV9pdm1k
X2RldmljZV9pb21tdShpdm1kX2Jsb2NrLCBiYXNlLCBsaW1pdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpciwgZXhj
bHVzaW9uKTsKIAogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFNRF9JT01NVV9E
RUJVRygiSVZNRCBFcnJvcjogSW52YWxpZCBCbG9jayBUeXBlIVxuIik7Ci0t
LSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11
LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRf
aW9tbXUuYwpAQCAtMjM0LDYgKzIzNCw4IEBAIHN0YXRpYyBpbnQgX19tdXN0
X2NoZWNrIGFsbG9jYXRlX2RvbWFpbl8KICAgICByZXR1cm4gcmM7CiB9CiAK
K2ludCBfX3JlYWRfbW9zdGx5IGFtZF9pb21tdV9taW5fcGFnaW5nX21vZGUg
PSAxOworCiBzdGF0aWMgaW50IGFtZF9pb21tdV9kb21haW5faW5pdChzdHJ1
Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhk
ID0gZG9tX2lvbW11KGQpOwpAQCAtMjQ1LDExICsyNDcsMTMgQEAgc3RhdGlj
IGludCBhbWRfaW9tbXVfZG9tYWluX2luaXQoc3RydWN0CiAgICAgICogLSBI
Vk0gY291bGQgaW4gcHJpbmNpcGxlIHVzZSAzIG9yIDQgZGVwZW5kaW5nIG9u
IGhvdyBtdWNoIGd1ZXN0CiAgICAgICogICBwaHlzaWNhbCBhZGRyZXNzIHNw
YWNlIHdlIGdpdmUgaXQsIGJ1dCB0aGlzIGlzbid0IGtub3duIHlldCBzbyB1
c2UgNAogICAgICAqICAgdW5pbGF0ZXJhbGx5LgorICAgICAqIC0gVW5pdHkg
bWFwcyBtYXkgcmVxdWlyZSBhbiBldmVuIGhpZ2hlciBudW1iZXIuCiAgICAg
ICovCi0gICAgaGQtPmFyY2gucGFnaW5nX21vZGUgPSBhbWRfaW9tbXVfZ2V0
X3BhZ2luZ19tb2RlKAotICAgICAgICBpc19odm1fZG9tYWluKGQpCi0gICAg
ICAgID8gMXVsIDw8IChERUZBVUxUX0RPTUFJTl9BRERSRVNTX1dJRFRIIC0g
UEFHRV9TSElGVCkKLSAgICAgICAgOiBnZXRfdXBwZXJfbWZuX2JvdW5kKCkg
KyAxKTsKKyAgICBoZC0+YXJjaC5wYWdpbmdfbW9kZSA9IG1heChhbWRfaW9t
bXVfZ2V0X3BhZ2luZ19tb2RlKAorICAgICAgICAgICAgaXNfaHZtX2RvbWFp
bihkKQorICAgICAgICAgICAgPyAxdWwgPDwgKERFRkFVTFRfRE9NQUlOX0FE
RFJFU1NfV0lEVEggLSBQQUdFX1NISUZUKQorICAgICAgICAgICAgOiBnZXRf
dXBwZXJfbWZuX2JvdW5kKCkgKyAxKSwKKyAgICAgICAgYW1kX2lvbW11X21p
bl9wYWdpbmdfbW9kZSk7CiAKICAgICByZXR1cm4gMDsKIH0KLS0tIGEveGVu
L2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21tdS1wcm90by5oCisr
KyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9hbWQtaW9tbXUtcHJv
dG8uaApAQCAtMTQwLDYgKzE0MCw4IEBAIGV4dGVybiBzdHJ1Y3QgaHBldF9z
YmRmIHsKICAgICB9IGluaXQ7CiB9IGhwZXRfc2JkZjsKIAorZXh0ZXJuIGlu
dCBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2RlOworCiBleHRlcm4gdm9pZCAq
c2hhcmVkX2ludHJlbWFwX3RhYmxlOwogZXh0ZXJuIHVuc2lnbmVkIGxvbmcg
KnNoYXJlZF9pbnRyZW1hcF9pbnVzZTsKIAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtODA3LDcgKzgw
Nyw3IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRl
cik7IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2Vu
dHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5V
TEwpOwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFw
Mm1faXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAg
ICAgICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3No
YXJlZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4o
bWZuK2ksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAgfQogICAgIH0K
QEAgLTkzNCwxMyArOTM0LDEzIEBAIGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5
KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAgICAgICAgICAg
IEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAgICB9Ci0gICAg
ICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNfZm9yZWlnbihv
dCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90KSApCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRuJ3QgYmUgdW5t
YXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAqLworICAgICAg
ICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWdu
IHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwog
ICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAgICAgICAgCi0g
ICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAgICAgIHJldHVy
biAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoIHAybV9p
c19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAgICAgICAgewpA
QCAtMTAzNCw4ICsxMDM0LDcgQEAgaW50IHAybV9jaGFuZ2VfdHlwZV9vbmUo
c3RydWN0IGRvbWFpbiAqZAogICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0g
PSBwMm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgaW50IHJjOwogCi0gICAgQlVH
X09OKHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lzX2dyYW50KG50KSk7Ci0g
ICAgQlVHX09OKHAybV9pc19mb3JlaWduKG90KSB8fCBwMm1faXNfZm9yZWln
bihudCkpOworICAgIEJVR19PTihwMm1faXNfc3BlY2lhbChvdCkgfHwgcDJt
X2lzX3NwZWNpYWwobnQpKTsKIAogICAgIGdmbl9sb2NrKHAybSwgZ2ZuLCAw
KTsKIApAQCAtMTI4MiwxMSArMTI4MSwxMSBAQCBzdGF0aWMgaW50IHNldF90
eXBlZF9wMm1fZW50cnkoc3RydWN0IGRvCiAgICAgICAgIGdmbl91bmxvY2so
cDJtLCBnZm4sIG9yZGVyKTsKICAgICAgICAgcmV0dXJuIGN1cl9vcmRlciAr
IDE7CiAgICAgfQotICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1f
aXNfZm9yZWlnbihvdCkgKQorICAgIGlmICggcDJtX2lzX3NwZWNpYWwob3Qp
ICkKICAgICB7CiAgICAgICAgIGdmbl91bmxvY2socDJtLCBnZm4sIG9yZGVy
KTsKICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwotICAgICAgICByZXR1cm4g
LUVOT0VOVDsKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKICAgICB9CiAgICAg
ZWxzZSBpZiAoIHAybV9pc19yYW0ob3QpICkKICAgICB7Ci0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4
Ni9wMm0uaApAQCAtMTQxLDYgKzE0MSwxMCBAQCB0eXBlZGVmIHVuc2lnbmVk
IGludCBwMm1fcXVlcnlfdDsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8IHAybV90b19tYXNrKHAybV9yYW1fbG9nZGlydHkpICkKICNkZWZpbmUg
UDJNX1NIQVJFRF9UWVBFUyAgIChwMm1fdG9fbWFzayhwMm1fcmFtX3NoYXJl
ZCkpCiAKKy8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQgdXAgdmlhIHNw
ZWNpYWwgYWNjZXNzb3JzLiAqLworI2RlZmluZSBQMk1fU1BFQ0lBTF9UWVBF
UyAoUDJNX0dSQU5UX1RZUEVTIHwgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkKKwogLyogVmFs
aWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQgd2l0aCBhICh2
YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9NRk5fVFlQRVMg
KFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhwMm1fbW1pb19k
aXJlY3QpIFwKQEAgLTE2OSw2ICsxNzMsNyBAQCB0eXBlZGVmIHVuc2lnbmVk
IGludCBwMm1fcXVlcnlfdDsKICNkZWZpbmUgcDJtX2lzX3BhZ2VkKF90KSAg
ICAocDJtX3RvX21hc2soX3QpICYgUDJNX1BBR0VEX1RZUEVTKQogI2RlZmlu
ZSBwMm1faXNfc2hhcmFibGUoX3QpIChwMm1fdG9fbWFzayhfdCkgJiBQMk1f
U0hBUkFCTEVfVFlQRVMpCiAjZGVmaW5lIHAybV9pc19zaGFyZWQoX3QpICAg
KHAybV90b19tYXNrKF90KSAmIFAyTV9TSEFSRURfVFlQRVMpCisjZGVmaW5l
IHAybV9pc19zcGVjaWFsKF90KSAgKHAybV90b19tYXNrKF90KSAmIFAyTV9T
UEVDSUFMX1RZUEVTKQogI2RlZmluZSBwMm1faXNfYnJva2VuKF90KSAgIChw
Mm1fdG9fbWFzayhfdCkgJiBQMk1fQlJPS0VOX1RZUEVTKQogI2RlZmluZSBw
Mm1faXNfZm9yZWlnbihfdCkgIChwMm1fdG9fbWFzayhfdCkgJiBwMm1fdG9f
bWFzayhwMm1fbWFwX2ZvcmVpZ24pKQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.13-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.13-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tLmMK
KysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ3NzAsNyArNDc3MCw5IEBA
IGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogCiAgICAgLyogUmVt
b3ZlIHByZXZpb3VzbHkgbWFwcGVkIHBhZ2UgaWYgaXQgd2FzIHByZXNlbnQu
ICovCiAgICAgcHJldl9tZm4gPSBnZXRfZ2ZuKGQsIGdmbl94KGdwZm4pLCAm
cDJtdCk7Ci0gICAgaWYgKCBtZm5fdmFsaWQocHJldl9tZm4pICkKKyAgICBp
ZiAoIHAybXQgPT0gcDJtX21taW9fZGlyZWN0ICkKKyAgICAgICAgcmMgPSAt
RVBFUk07CisgICAgZWxzZSBpZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQog
ICAgIHsKICAgICAgICAgaWYgKCBpc194ZW5faGVhcF9tZm4ocHJldl9tZm4p
ICkKICAgICAgICAgICAgIC8qIFhlbiBoZWFwIGZyYW1lcyBhcmUgc2ltcGx5
IHVuaG9va2VkIGZyb20gdGhpcyBwaHlzIHNsb3QuICovCi0tLSBhL3hlbi9h
cmNoL3g4Ni9tbS9wMm0uYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMK
QEAgLTc5Niw3ICs3OTYsOCBAQCBwMm1fcmVtb3ZlX3BhZ2Uoc3RydWN0IHAy
bV9kb21haW4gKnAybSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZjdXJfb3JkZXIsIE5VTEwpOwogCiAgICAgICAgIGlm
ICggcDJtX2lzX3ZhbGlkKHQpICYmCi0gICAgICAgICAgICAgKCFtZm5fdmFs
aWQoX21mbihtZm4pKSB8fCBtZm4gKyBpICE9IG1mbl94KG1mbl9yZXR1cm4p
KSApCisgICAgICAgICAgICAgKCFtZm5fdmFsaWQoX21mbihtZm4pKSB8fCB0
ID09IHAybV9tbWlvX2RpcmVjdCB8fAorICAgICAgICAgICAgICBtZm4gKyBp
ICE9IG1mbl94KG1mbl9yZXR1cm4pKSApCiAgICAgICAgICAgICByZXR1cm4g
LUVJTFNFUTsKIAogICAgICAgICBpICs9ICgxVUwgPDwgY3VyX29yZGVyKSAt
ICgoZ2ZuX2wgKyBpKSAmICgoMVVMIDw8IGN1cl9vcmRlcikgLSAxKSk7CkBA
IC04OTAsNyArODkxLDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3Ry
dWN0IGRvbWFpbiAqZAogICAgIGlmICggcDJtX2lzX2ZvcmVpZ24odCkgKQog
ICAgICAgICByZXR1cm4gLUVJTlZBTDsKIAotICAgIGlmICggIW1mbl92YWxp
ZChtZm4pICkKKyAgICBpZiAoICFtZm5fdmFsaWQobWZuKSB8fCB0ID09IHAy
bV9tbWlvX2RpcmVjdCApCiAgICAgewogICAgICAgICBBU1NFUlRfVU5SRUFD
SEFCTEUoKTsKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CkBAIC05MzYsNyAr
OTM3LDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFp
biAqZAogICAgICAgICB9CiAgICAgICAgIGlmICggcDJtX2lzX3NwZWNpYWwo
b3QpICkKICAgICAgICAgewotICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0
IHVubWFwcGluZyBncmFudC9mb3JlaWduIHRoaXMgd2F5LiAqLworICAgICAg
ICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWdu
L2RpcmVjdC1NTUlPIHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWlu
X2NyYXNoKGQpOwogICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAg
ICAgICAgICAgCkBAIC0xMzg1LDggKzEzODYsOCBAQCBpbnQgc2V0X2lkZW50
aXR5X3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluCiAgKiAgICBvcmRlcisxICBm
b3IgY2FsbGVyIHRvIHJldHJ5IHdpdGggb3JkZXIgKGd1YXJhbnRlZWQgc21h
bGxlciB0aGFuCiAgKiAgICAgICAgICAgICB0aGUgb3JkZXIgdmFsdWUgcGFz
c2VkIGluKQogICovCi1pbnQgY2xlYXJfbW1pb19wMm1fZW50cnkoc3RydWN0
IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBnZm5fbCwgbWZuX3QgbWZuLAot
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBvcmRlcikK
K3N0YXRpYyBpbnQgY2xlYXJfbW1pb19wMm1fZW50cnkoc3RydWN0IGRvbWFp
biAqZCwgdW5zaWduZWQgbG9uZyBnZm5fbCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWZuX3QgbWZuLCB1bnNpZ25lZCBpbnQgb3JkZXIp
CiB7CiAgICAgaW50IHJjID0gLUVJTlZBTDsKICAgICBnZm5fdCBnZm4gPSBf
Z2ZuKGdmbl9sKTsKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wb2QuYwor
KysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLXBvZC5jCkBAIC0xMjk1LDE3ICsx
Mjk1LDE3IEBAIGd1ZXN0X3BoeXNtYXBfbWFya19wb3B1bGF0ZV9vbl9kZW1h
bmQoc3QKIAogICAgICAgICBwMm0tPmdldF9lbnRyeShwMm0sIGdmbl9hZGQo
Z2ZuLCBpKSwgJm90LCAmYSwgMCwgJmN1cl9vcmRlciwgTlVMTCk7CiAgICAg
ICAgIG4gPSAxVUwgPDwgbWluKG9yZGVyLCBjdXJfb3JkZXIpOwotICAgICAg
ICBpZiAoIHAybV9pc19yYW0ob3QpICkKKyAgICAgICAgaWYgKCBvdCA9PSBw
Mm1fcG9wdWxhdGVfb25fZGVtYW5kICkKKyAgICAgICAgeworICAgICAgICAg
ICAgLyogQ291bnQgaG93IG1hbnkgUG9EIGVudHJpZXMgd2UnbGwgYmUgcmVw
bGFjaW5nIGlmIHN1Y2Nlc3NmdWwgKi8KKyAgICAgICAgICAgIHBvZF9jb3Vu
dCArPSBuOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKCBvdCAhPSBw
Mm1faW52YWxpZCAmJiBvdCAhPSBwMm1fbW1pb19kbSApCiAgICAgICAgIHsK
ICAgICAgICAgICAgIFAyTV9ERUJVRygiZ2ZuX3RvX21mbiByZXR1cm5lZCB0
eXBlICVkIVxuIiwgb3QpOwogICAgICAgICAgICAgcmMgPSAtRUJVU1k7CiAg
ICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAgfQotICAgICAgICBlbHNl
IGlmICggb3QgPT0gcDJtX3BvcHVsYXRlX29uX2RlbWFuZCApCi0gICAgICAg
IHsKLSAgICAgICAgICAgIC8qIENvdW50IGhvdyBtYW4gUG9EIGVudHJpZXMg
d2UnbGwgYmUgcmVwbGFjaW5nIGlmIHN1Y2Nlc3NmdWwgKi8KLSAgICAgICAg
ICAgIHBvZF9jb3VudCArPSBuOwotICAgICAgICB9CiAgICAgfQogCiAgICAg
LyogTm93LCBhY3R1YWxseSBkbyB0aGUgdHdvLXdheSBtYXBwaW5nICovCi0t
LSBhL3hlbi9jb21tb24vbWVtb3J5LmMKKysrIGIveGVuL2NvbW1vbi9tZW1v
cnkuYwpAQCAtMzI4LDcgKzMyOCw3IEBAIGludCBndWVzdF9yZW1vdmVfcGFn
ZShzdHJ1Y3QgZG9tYWluICpkLAogICAgIH0KICAgICBpZiAoIHAybXQgPT0g
cDJtX21taW9fZGlyZWN0ICkKICAgICB7Ci0gICAgICAgIHJjID0gY2xlYXJf
bW1pb19wMm1fZW50cnkoZCwgZ21mbiwgbWZuLCBQQUdFX09SREVSXzRLKTsK
KyAgICAgICAgcmMgPSAtRVBFUk07CiAgICAgICAgIGdvdG8gb3V0X3B1dF9n
Zm47CiAgICAgfQogI2Vsc2UKQEAgLTE3MjAsNiArMTcyMCwxNSBAQCBpbnQg
Y2hlY2tfZ2V0X3BhZ2VfZnJvbV9nZm4oc3RydWN0IGRvbWFpCiAgICAgICAg
IHJldHVybiAtRUFHQUlOOwogICAgIH0KICNlbmRpZgorI2lmZGVmIENPTkZJ
R19YODYKKyAgICBpZiAoIHAybXQgPT0gcDJtX21taW9fZGlyZWN0ICkKKyAg
ICB7CisgICAgICAgIGlmICggcGFnZSApCisgICAgICAgICAgICBwdXRfcGFn
ZShwYWdlKTsKKworICAgICAgICByZXR1cm4gLUVQRVJNOworICAgIH0KKyNl
bmRpZgogCiAgICAgaWYgKCAhcGFnZSApCiAgICAgICAgIHJldHVybiAtRUlO
VkFMOwotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hl
bi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKQEAgLTE0Myw3ICsxNDMsOCBAQCB0
eXBlZGVmIHVuc2lnbmVkIGludCBwMm1fcXVlcnlfdDsKIAogLyogVHlwZXMg
ZXN0YWJsaXNoZWQvY2xlYW5lZCB1cCB2aWEgc3BlY2lhbCBhY2Nlc3NvcnMu
ICovCiAjZGVmaW5lIFAyTV9TUEVDSUFMX1RZUEVTIChQMk1fR1JBTlRfVFlQ
RVMgfCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fdG9fbWFz
ayhwMm1fbWFwX2ZvcmVpZ24pKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSB8IFwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHAybV90b19tYXNrKHAybV9tbWlvX2RpcmVj
dCkpCiAKIC8qIFZhbGlkIHR5cGVzIG5vdCBuZWNlc3NhcmlseSBhc3NvY2lh
dGVkIHdpdGggYSAodmFsaWQpIE1GTi4gKi8KICNkZWZpbmUgUDJNX0lOVkFM
SURfTUZOX1RZUEVTIChQMk1fUE9EX1RZUEVTICAgICAgICAgICAgICAgICAg
XApAQCAtNjQ5LDggKzY1MCw2IEBAIGludCBzZXRfZm9yZWlnbl9wMm1fZW50
cnkoc3RydWN0IGRvbWFpbgogLyogU2V0IG1taW8gYWRkcmVzc2VzIGluIHRo
ZSBwMm0gdGFibGUgKGZvciBwYXNzLXRocm91Z2gpICovCiBpbnQgc2V0X21t
aW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcg
Z2ZuLCBtZm5fdCBtZm4sCiAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCBvcmRlciwgcDJtX2FjY2Vzc190IGFjY2Vzcyk7Ci1pbnQgY2xl
YXJfbW1pb19wMm1fZW50cnkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQg
bG9uZyBnZm4sIG1mbl90IG1mbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBpbnQgb3JkZXIpOwogCiAvKiBTZXQgaWRlbnRpdHkgYWRk
cmVzc2VzIGluIHRoZSBwMm0gdGFibGUgKGZvciBwYXNzLXRocm91Z2gpICov
CiBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluICpk
LCB1bnNpZ25lZCBsb25nIGdmbiwK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9hY3BpLmMKQEAgLTExNywxMiArMTE3LDIxIEBAIHN0YXRpYyBzdHJ1
Y3QgYW1kX2lvbW11ICogX19pbml0IGZpbmRfaW8KICAgICByZXR1cm4gTlVM
TDsKIH0KIAotc3RhdGljIHZvaWQgX19pbml0IHJlc2VydmVfaW9tbXVfZXhj
bHVzaW9uX3JhbmdlKAotICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1
aW50NjRfdCBiYXNlLCB1aW50NjRfdCBsaW1pdCkKK3N0YXRpYyBpbnQgX19p
bml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKAorICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBs
aW1pdCwKKyAgICBib29sIGFsbCwgYm9vbCBpdywgYm9vbCBpcikKIHsKKyAg
ICBpZiAoICFpciB8fCAhaXcgKQorICAgICAgICByZXR1cm4gLUVQRVJNOwor
CiAgICAgLyogbmVlZCB0byBleHRlbmQgZXhjbHVzaW9uIHJhbmdlPyAqLwog
ICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgKQogICAgIHsKKyAg
ICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9uX2xpbWl0ICsgUEFHRV9TSVpF
IDwgYmFzZSB8fAorICAgICAgICAgICAgIGxpbWl0ICsgUEFHRV9TSVpFIDwg
aW9tbXUtPmV4Y2x1c2lvbl9iYXNlIHx8CisgICAgICAgICAgICAgaW9tbXUt
PmV4Y2x1c2lvbl9hbGxvd19hbGwgIT0gYWxsICkKKyAgICAgICAgICAgIHJl
dHVybiAtRUJVU1k7CisKICAgICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9u
X2Jhc2UgPCBiYXNlICkKICAgICAgICAgICAgIGJhc2UgPSBpb21tdS0+ZXhj
bHVzaW9uX2Jhc2U7CiAgICAgICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9s
aW1pdCA+IGxpbWl0ICkKQEAgLTEzMCwxNiArMTM5LDExIEBAIHN0YXRpYyB2
b2lkIF9faW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2kKICAgICB9CiAKICAg
ICBpb21tdS0+ZXhjbHVzaW9uX2VuYWJsZSA9IElPTU1VX0NPTlRST0xfRU5B
QkxFRDsKKyAgICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IGFsbDsK
ICAgICBpb21tdS0+ZXhjbHVzaW9uX2Jhc2UgPSBiYXNlOwogICAgIGlvbW11
LT5leGNsdXNpb25fbGltaXQgPSBsaW1pdDsKLX0KIAotc3RhdGljIHZvaWQg
X19pbml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlX2FsbCgKLSAg
ICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25lZCBsb25n
IGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQpCi17Ci0gICAgcmVzZXJ2ZV9p
b21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAg
ICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IElPTU1VX0NPTlRST0xf
RU5BQkxFRDsKKyAgICByZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgX19p
bml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoCkBAIC0xNzcsNiAr
MTgxLDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbgogICAgIHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3As
IGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAgICB1
bnNpZ25lZCBpbnQgYmRmOworICAgIGludCByYyA9IDA7CiAKICAgICAvKiBp
cyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5nZSBpbnNpZGUgb2YgSU9NTVUgdmly
dHVhbCBhZGRyZXNzIHNwYWNlPyAqLwogICAgIC8qIG5vdGU6ICdsaW1pdCcg
cGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCkBA
IC0xOTgsMTAgKzIwMywxNSBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rl
cl9leGNsdXNpb25fcmFuCiAgICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3Ag
KQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBpb21tdSAp
Ci0gICAgICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9h
bGwoaW9tbXUsIGJhc2UsIGxpbWl0KTsKKyAgICAgICAgeworICAgICAgICAg
ICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwg
YmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOworICAg
ICAgICAgICAgaWYgKCByYyApCisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
cmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW5nZV9mb3JfZGV2aWNlKApAQCAtMjEyLDYgKzIyMiw3IEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICB1bnNp
Z25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgdTE2IHJlcTsKKyAgICBp
bnQgcmMgPSAwOwogCiAgICAgaW9tbXUgPSBmaW5kX2lvbW11X2Zvcl9kZXZp
Y2Uoc2VnLCBiZGYpOwogICAgIGlmICggIWlvbW11ICkKQEAgLTI0MSwxMiAr
MjUyLDEzIEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW4KICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ug
c2V0dGluZ3MgZm9yIGRldmljZSAqLwogICAgIGlmICggbGltaXQgPj0gaW9t
bXVfdG9wICApCiAgICAgewotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQpOworICAgICAgICByYyA9
IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBs
aW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmYWxzZSAvKiBhbGwgKi8sIGl3LCBpcik7CiAgICAgICAgIGl2cnNf
bWFwcGluZ3NbYmRmXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1ZTsKICAg
ICAgICAgaXZyc19tYXBwaW5nc1tyZXFdLmR0ZV9hbGxvd19leGNsdXNpb24g
PSB0cnVlOwogICAgIH0KIAotICAgIHJldHVybiAwOworICAgIHJldHVybiBy
YzsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbmdlX2Zvcl9pb21tdV9kZXZpY2VzKApAQCAtMjU2LDYgKzI2OCw3IEBA
IHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAg
ICB1bnNpZ25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7
CiAgICAgdW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOworICAgIGlu
dCByYyA9IDA7CiAKICAgICAvKiBpcyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5n
ZSBpbnNpZGUgb2YgSU9NTVUgdmlydHVhbCBhZGRyZXNzIHNwYWNlPyAqLwog
ICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8g
YmUgcGFnZS1hbGlnbmVkICovCkBAIC0yODYsOCArMjk5LDEwIEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KIAogICAgIC8q
IHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwog
ICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkKLSAgICAgICAgcmVzZXJ2
ZV9pb21tdV9leGNsdXNpb25fcmFuZ2VfYWxsKGlvbW11LCBiYXNlLCBsaW1p
dCk7Ci0gICAgcmV0dXJuIDA7CisgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21t
dV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgLyog
YWxsICovLCBpdywgaXIpOworCisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9zZWxlY3QoCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L2FtZC9pb21tdS5oCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9pb21tdS5oCkBAIC0xMDcsMjAgKzEwNywyNCBAQCBzdHJ1Y3QgYW1kX2lv
bW11IHsKICAgICBzdHJ1Y3QgbGlzdF9oZWFkIGF0c19kZXZpY2VzOwogfTsK
IAorc3RydWN0IGl2cnNfdW5pdHlfbWFwIHsKKyAgICBib29sIHJlYWQ6MTsK
KyAgICBib29sIHdyaXRlOjE7CisgICAgcGFkZHJfdCBhZGRyOworICAgIHVu
c2lnbmVkIGxvbmcgbGVuZ3RoOworICAgIHN0cnVjdCBpdnJzX3VuaXR5X21h
cCAqbmV4dDsKK307CisKIHN0cnVjdCBpdnJzX21hcHBpbmdzIHsKICAgICB1
aW50MTZfdCBkdGVfcmVxdWVzdG9yX2lkOwogICAgIGJvb2wgdmFsaWQ6MTsK
ICAgICBib29sIGR0ZV9hbGxvd19leGNsdXNpb246MTsKLSAgICBib29sIHVu
aXR5X21hcF9lbmFibGU6MTsKLSAgICBib29sIHdyaXRlX3Blcm1pc3Npb246
MTsKLSAgICBib29sIHJlYWRfcGVybWlzc2lvbjoxOwogCiAgICAgLyogaXZo
ZCBkZXZpY2UgZGF0YSBzZXR0aW5ncyAqLwogICAgIHVpbnQ4X3QgZGV2aWNl
X2ZsYWdzOwogCi0gICAgdW5zaWduZWQgbG9uZyBhZGRyX3JhbmdlX3N0YXJ0
OwotICAgIHVuc2lnbmVkIGxvbmcgYWRkcl9yYW5nZV9sZW5ndGg7CiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CisgICAgc3RydWN0IGl2cnNfdW5p
dHlfbWFwICp1bml0eV9tYXA7CiAKICAgICAvKiBwZXIgZGV2aWNlIGludGVy
cnVwdCByZW1hcHBpbmcgdGFibGUgKi8KICAgICB2b2lkICppbnRyZW1hcF90
YWJsZTsKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2FjcGkuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCkBAIC0xNDYsMzIgKzE0Niw0OCBAQCBzdGF0aWMgaW50IF9f
aW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvCiAgICAgcmV0dXJuIDA7CiB9
CiAKLXN0YXRpYyB2b2lkIF9faW5pdCByZXNlcnZlX3VuaXR5X21hcF9mb3Jf
ZGV2aWNlKAotICAgIHUxNiBzZWcsIHUxNiBiZGYsIHVuc2lnbmVkIGxvbmcg
YmFzZSwKLSAgICB1bnNpZ25lZCBsb25nIGxlbmd0aCwgdTggaXcsIHU4IGly
KQorc3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2Rl
dmljZSgKKyAgICB1aW50MTZfdCBzZWcsIHVpbnQxNl90IGJkZiwgdW5zaWdu
ZWQgbG9uZyBiYXNlLAorICAgIHVuc2lnbmVkIGxvbmcgbGVuZ3RoLCBib29s
IGl3LCBib29sIGlyKQogewogICAgIHN0cnVjdCBpdnJzX21hcHBpbmdzICpp
dnJzX21hcHBpbmdzID0gZ2V0X2l2cnNfbWFwcGluZ3Moc2VnKTsKLSAgICB1
bnNpZ25lZCBsb25nIG9sZF90b3AsIG5ld190b3A7CisgICAgc3RydWN0IGl2
cnNfdW5pdHlfbWFwICp1bml0eV9tYXAgPSBpdnJzX21hcHBpbmdzW2JkZl0u
dW5pdHlfbWFwOwogCi0gICAgLyogbmVlZCB0byBleHRlbmQgdW5pdHktbWFw
cGVkIHJhbmdlPyAqLwotICAgIGlmICggaXZyc19tYXBwaW5nc1tiZGZdLnVu
aXR5X21hcF9lbmFibGUgKQorICAgIC8qIENoZWNrIGZvciBvdmVybGFwcy4g
Ki8KKyAgICBmb3IgKCA7IHVuaXR5X21hcDsgdW5pdHlfbWFwID0gdW5pdHlf
bWFwLT5uZXh0ICkKICAgICB7Ci0gICAgICAgIG9sZF90b3AgPSBpdnJzX21h
cHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9zdGFydCArCi0gICAgICAgICAgICBp
dnJzX21hcHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9sZW5ndGg7Ci0gICAgICAg
IG5ld190b3AgPSBiYXNlICsgbGVuZ3RoOwotICAgICAgICBpZiAoIG9sZF90
b3AgPiBuZXdfdG9wICkKLSAgICAgICAgICAgIG5ld190b3AgPSBvbGRfdG9w
OwotICAgICAgICBpZiAoIGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3Jhbmdl
X3N0YXJ0IDwgYmFzZSApCi0gICAgICAgICAgICBiYXNlID0gaXZyc19tYXBw
aW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQ7Ci0gICAgICAgIGxlbmd0aCA9
IG5ld190b3AgLSBiYXNlOwotICAgIH0KLQotICAgIC8qIGV4dGVuZCByL3cg
cGVybWlzc2lvbXMgYW5kIGtlZXAgYWdncmVnYXRlICovCi0gICAgaXZyc19t
YXBwaW5nc1tiZGZdLndyaXRlX3Blcm1pc3Npb24gPSBpdzsKLSAgICBpdnJz
X21hcHBpbmdzW2JkZl0ucmVhZF9wZXJtaXNzaW9uID0gaXI7Ci0gICAgaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcF9lbmFibGUgPSB0cnVlOwotICAg
IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3JhbmdlX3N0YXJ0ID0gYmFzZTsK
LSAgICBpdnJzX21hcHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9sZW5ndGggPSBs
ZW5ndGg7CisgICAgICAgIC8qCisgICAgICAgICAqIEV4YWN0IG1hdGNoZXMg
YXJlIG9rYXkuIFRoaXMgY2FuIGluIHBhcnRpY3VsYXIgaGFwcGVuIHdoZW4K
KyAgICAgICAgICogcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZp
Y2UoKSBjYWxscyBoZXJlIHR3aWNlIGZvciB0aGUKKyAgICAgICAgICogc2Ft
ZSAocyxiLGQsZikuCisgICAgICAgICAqLworICAgICAgICBpZiAoIGJhc2Ug
PT0gdW5pdHlfbWFwLT5hZGRyICYmIGxlbmd0aCA9PSB1bml0eV9tYXAtPmxl
bmd0aCAmJgorICAgICAgICAgICAgIGlyID09IHVuaXR5X21hcC0+cmVhZCAm
JiBpdyA9PSB1bml0eV9tYXAtPndyaXRlICkKKyAgICAgICAgICAgIHJldHVy
biAwOworCisgICAgICAgIGlmICggdW5pdHlfbWFwLT5hZGRyICsgdW5pdHlf
bWFwLT5sZW5ndGggPiBiYXNlICYmCisgICAgICAgICAgICAgYmFzZSArIGxl
bmd0aCA+IHVuaXR5X21hcC0+YWRkciApCisgICAgICAgIHsKKyAgICAgICAg
ICAgIEFNRF9JT01NVV9ERUJVRygiSVZNRCBFcnJvcjogb3ZlcmxhcCBbJWx4
LCVseCkgdnMgWyVseCwlbHgpXG4iLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJhc2UsIGJhc2UgKyBsZW5ndGgsIHVuaXR5X21hcC0+YWRkciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPmFkZHIg
KyB1bml0eV9tYXAtPmxlbmd0aCk7CisgICAgICAgICAgICByZXR1cm4gLUVQ
RVJNOworICAgICAgICB9CisgICAgfQorCisgICAgLyogUG9wdWxhdGUgYW5k
IGluc2VydCBhIG5ldyB1bml0eSBtYXAuICovCisgICAgdW5pdHlfbWFwID0g
eG1hbGxvYyhzdHJ1Y3QgaXZyc191bml0eV9tYXApOworICAgIGlmICggIXVu
aXR5X21hcCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworCisgICAgdW5p
dHlfbWFwLT5yZWFkID0gaXI7CisgICAgdW5pdHlfbWFwLT53cml0ZSA9IGl3
OworICAgIHVuaXR5X21hcC0+YWRkciA9IGJhc2U7CisgICAgdW5pdHlfbWFw
LT5sZW5ndGggPSBsZW5ndGg7CisgICAgdW5pdHlfbWFwLT5uZXh0ID0gaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcDsKKyAgICBpdnJzX21hcHBpbmdz
W2JkZl0udW5pdHlfbWFwID0gdW5pdHlfbWFwOworCisgICAgcmV0dXJuIDA7
CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW5nZV9mb3JfYWxsX2RldmljZXMoCkBAIC0xOTQsMTMgKzIxMCwxMyBAQCBz
dGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAg
ICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAtIGJhc2U7CiAgICAgICAgIC8qIHJl
c2VydmUgci93IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmlj
ZXMgKi8KICAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFy
dCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJk
ZiA9IDA7IGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAg
ICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYs
IGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsKKyAgICAgICAgZm9yICggYmRmID0g
MDsgIXJjICYmIGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKKyAg
ICAgICAgICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShz
ZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOwogICAgICAgICAvKiBw
dXNoICdiYXNlJyBqdXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNw
YWNlICovCiAgICAgICAgIGJhc2UgPSBpb21tdV90b3A7CiAgICAgfQogICAg
IC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAq
LwotICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkKKyAgICBpZiAoICFy
YyAmJiBsaW1pdCA+PSBpb21tdV90b3AgKQogICAgIHsKICAgICAgICAgZm9y
X2VhY2hfYW1kX2lvbW11KCBpb21tdSApCiAgICAgICAgIHsKQEAgLTI0Miwx
NSArMjU4LDE1IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1
c2lvbl9yYW4KICAgICAgICAgbGVuZ3RoID0gcmFuZ2VfdG9wIC0gYmFzZTsK
ICAgICAgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVz
IGZvciBkZXZpY2UgKi8KICAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmll
cyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2Us
IGxlbmd0aCwgaXcsIGlyKTsKLSAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBf
Zm9yX2RldmljZShzZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOwor
ICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2Vn
LCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKSA/OgorICAgICAgICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2Us
IGxlbmd0aCwgaXcsIGlyKTsKIAogICAgICAgICAvKiBwdXNoICdiYXNlJyBq
dXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAg
ICAgIGJhc2UgPSBpb21tdV90b3A7CiAgICAgfQogCiAgICAgLyogcmVnaXN0
ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzIGZvciBkZXZpY2Ug
Ki8KLSAgICBpZiAoIGxpbWl0ID49IGlvbW11X3RvcCAgKQorICAgIGlmICgg
IXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCAgKQogICAgIHsKICAgICAgICAg
cmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFz
ZSwgbGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwpAQCAtMjgxLDE1
ICsyOTcsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVz
aW9uX3JhbgogICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwog
ICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2VzICovCiAgICAgICAgIC8qIG5vdGU6IHRoZXNlIGVu
dHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAg
ICAgICBmb3IgKCBiZGYgPSAwOyBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBi
ZGYrKyApCisgICAgICAgIGZvciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYgPCBp
dnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCiAgICAgICAgIHsKICAgICAgICAg
ICAgIGlmICggaW9tbXUgPT0gZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11
LT5zZWcsIGJkZikgKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRm
LCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpOwogICAgICAgICAgICAgICAgIHJl
cSA9IGdldF9pdnJzX21hcHBpbmdzKGlvbW11LT5zZWcpW2JkZl0uZHRlX3Jl
cXVlc3Rvcl9pZDsKLSAgICAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21h
cF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aXcsIGlyKTsKKyAgICAgICAgICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlf
bWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGl3LCBpcikgPzoKKyAgICAgICAgICAgICAgICAgICAgIHJlc2Vy
dmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgcmVxLCBiYXNl
LCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGl3LCBpcik7CiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0KIApAQCAtMjk4LDcgKzMxNCw3IEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICB9CiAKICAgICAvKiByZWdp
c3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ugc2V0dGluZ3MgKi8KLSAgICBp
ZiAoIGxpbWl0ID49IGlvbW11X3RvcCApCisgICAgaWYgKCAhcmMgJiYgbGlt
aXQgPj0gaW9tbXVfdG9wICkKICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBh
bGwgKi8sIGl3LCBpcik7CiAKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNz
dGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0zNjYsMTUgKzM2Niwx
NyBAQCBzdGF0aWMgaW50IGFtZF9pb21tdV9hc3NpZ25fZGV2aWNlKHN0cnVj
CiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwogICAgIGludCBiZGYgPSBQ
Q0lfQkRGMihwZGV2LT5idXMsIGRldmZuKTsKICAgICBpbnQgcmVxX2lkID0g
Z2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYpOworICAgIGNv
bnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwOwogCi0gICAg
aWYgKCBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwX2VuYWJsZSAp
CisgICAgZm9yICggdW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRd
LnVuaXR5X21hcDsgdW5pdHlfbWFwOworICAgICAgICAgIHVuaXR5X21hcCA9
IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewotICAgICAgICBhbWRfaW9tbXVf
cmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKAotICAgICAgICAgICAgZCwKLSAg
ICAgICAgICAgIGl2cnNfbWFwcGluZ3NbcmVxX2lkXS5hZGRyX3JhbmdlX3N0
YXJ0LAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLmFkZHJf
cmFuZ2VfbGVuZ3RoLAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFf
aWRdLndyaXRlX3Blcm1pc3Npb24sCi0gICAgICAgICAgICBpdnJzX21hcHBp
bmdzW3JlcV9pZF0ucmVhZF9wZXJtaXNzaW9uKTsKKyAgICAgICAgaW50IHJj
ID0gYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAg
ICAgICAgICAgICAgICAgIGQsIHVuaXR5X21hcC0+YWRkciwgdW5pdHlfbWFw
LT5sZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPndy
aXRlLCB1bml0eV9tYXAtPnJlYWQpOworCisgICAgICAgIGlmICggcmMgKQor
ICAgICAgICAgICAgcmV0dXJuIHJjOwogICAgIH0KIAogICAgIHJldHVybiBy
ZWFzc2lnbl9kZXZpY2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwgcGRldik7
Cg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0
LmMKQEAgLTY4MCw3ICs2ODAsNyBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sIGdmCiAgICAgdWludDhfdCBpcGF0ID0gMDsKICAg
ICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsKICAgICBib29s
X3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsKLSAgICB1bnNpZ25lZCBpbnQgaW9t
bXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7Cisg
ICAgdW5zaWduZWQgaW50IGlvbW11X2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBwMm1hLCBtZm4pOwogICAgIGJvb2xfdCBuZWVkc19zeW5j
ID0gMTsKICAgICBlcHRfZW50cnlfdCBvbGRfZW50cnkgPSB7IC5lcHRlID0g
MCB9OwogICAgIGVwdF9lbnRyeV90IG5ld19lbnRyeSA9IHsgLmVwdGUgPSAw
IH07CkBAIC04MDgsOCArODA4LDggQEAgZXB0X3NldF9lbnRyeShzdHJ1Y3Qg
cDJtX2RvbWFpbiAqcDJtLCBnZgogCiAgICAgICAgIC8qIFNhZmUgdG8gcmVh
ZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2UgaG9sZCB0aGUgcDJtIGxvY2sgKi8K
ICAgICAgICAgaWYgKCBlcHRfZW50cnktPm1mbiA9PSBuZXdfZW50cnkubWZu
ICYmCi0gICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhlcHRfZW50
cnktPnNhX3AybXQsIF9tZm4oZXB0X2VudHJ5LT5tZm4pKSA9PQotICAgICAg
ICAgICAgIGlvbW11X2ZsYWdzICkKKyAgICAgICAgICAgICBwMm1fZ2V0X2lv
bW11X2ZsYWdzKGVwdF9lbnRyeS0+c2FfcDJtdCwgZXB0X2VudHJ5LT5hY2Nl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKGVw
dF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVfZmxhZ3MgKQogICAgICAgICAgICAg
bmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMDsKIAogICAgICAgICBlcHRfcDJt
X3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3X2VudHJ5KTsKLS0tIGEveGVuL2Fy
Y2gveDg2L21tL3AybS1wdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0t
cHQuYwpAQCAtNDgwLDYgKzQ4MCwxNiBAQCBpbnQgcDJtX3B0X2hhbmRsZV9k
ZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAgICAgcmV0dXJuIHJjOwogfQogCisv
KiBSZWNvbnN0cnVjdCBhIGZha2UgcDJtX2FjY2Vzc190IGZyb20gc3RvcmVk
IFBURSBmbGFncy4gKi8KK3N0YXRpYyBwMm1fYWNjZXNzX3QgcDJtX2ZsYWdz
X3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7CisgICAgaWYgKCBm
bGFncyAmIF9QQUdFX1BSRVNFTlQgKQorICAgICAgICByZXR1cm4gcDJtX2Fj
Y2Vzc19uOworCisgICAgLyogTm8gbmVlZCB0byBsb29rIGF0IF9QQUdFX05Y
IGZvciBub3cuICovCisgICAgcmV0dXJuIGZsYWdzICYgX1BBR0VfUlcgPyBw
Mm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vzc19yOworfQorCiAvKiBDaGVja3Mg
b25seSBhcHBsaWNhYmxlIHRvIGVudHJpZXMgd2l0aCBvcmRlciA+IFBBR0Vf
T1JERVJfNEsgKi8KIHN0YXRpYyB2b2lkIGNoZWNrX2VudHJ5KG1mbl90IG1m
biwgcDJtX3R5cGVfdCBuZXcsIHAybV90eXBlX3Qgb2xkLAogICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVyKQpAQCAtNTE0LDcg
KzUyNCw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4g
KnAybSwKICAgICBsMl9wZ2VudHJ5X3QgbDJlX2NvbnRlbnQ7CiAgICAgbDNf
cGdlbnRyeV90IGwzZV9jb250ZW50OwogICAgIGludCByYzsKLSAgICB1bnNp
Z25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdzID0gcDJtX2dldF9pb21tdV9mbGFn
cyhwMm10LCBtZm4pOworICAgIHVuc2lnbmVkIGludCBpb21tdV9wdGVfZmxh
Z3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIHAybWEsIG1mbik7CiAg
ICAgLyoKICAgICAgKiBvbGRfbWZuIGFuZCBpb21tdV9vbGRfZmxhZ3MgY29u
dHJvbCBwb3NzaWJsZSBmbHVzaC91cGRhdGUgbmVlZHMgb24gdGhlCiAgICAg
ICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBNRk4gb3IgZmxhZ3Mg
KGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4KQEAgLTU3Nyw2ICs1ODcsNyBA
QCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAg
ICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRfcGZuKCpwMm1fZW50
cnkpOwogICAgICAgICAgICAgICAgIGlvbW11X29sZF9mbGFncyA9CiAgICAg
ICAgICAgICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxhZ3MocDJtX2ZsYWdz
X3RvX3R5cGUoZmxhZ3MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHAybV9mbGFnc190b19hY2Nlc3MoZmxhZ3MpLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4ob2xk
X21mbikpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQpAQCAt
NjE5LDkgKzYzMCwxMCBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1f
ZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRSSUVTKTsKICAgICAgICAgQVNTRVJU
KHAybV9lbnRyeSk7CiAgICAgICAgIG9sZF9tZm4gPSBsMWVfZ2V0X3Bmbigq
cDJtX2VudHJ5KTsKKyAgICAgICAgZmxhZ3MgPSBsMWVfZ2V0X2ZsYWdzKCpw
Mm1fZW50cnkpOwogICAgICAgICBpb21tdV9vbGRfZmxhZ3MgPQotICAgICAg
ICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlwZShs
MWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7CisgICAgICAgICAgICBw
Mm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9mbGFnc190b190eXBlKGZsYWdzKSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3Rv
X2FjY2VzcyhmbGFncyksIF9tZm4ob2xkX21mbikpOwogCiAgICAgICAgIGlm
ICggbWZuX3ZhbGlkKG1mbikgfHwgcDJtX2FsbG93c19pbnZhbGlkX21mbihw
Mm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50ID0gcDJtX2wxZV9m
cm9tX3BmbihtZm5feChtZm4pLApAQCAtNjQ5LDYgKzY2MSw3IEBAIHAybV9w
dF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwKICAgICAgICAg
ICAgICAgICBvbGRfbWZuID0gbDFlX2dldF9wZm4oKnAybV9lbnRyeSk7CiAg
ICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0KICAgICAgICAgICAg
ICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlw
ZShmbGFncyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4
Ni9wMm0uaApAQCAtOTAzLDcgKzkwMyw4IEBAIHN0YXRpYyBpbmxpbmUgdm9p
ZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnUKIC8qCiAgKiBwMm0gdHlwZSB0byBJ
T01NVSBmbGFncwogICovCi1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBw
Mm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90eXBlX3QgcDJtdCwgbWZuX3QgbWZu
KQorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2dldF9pb21tdV9m
bGFncyhwMm1fdHlwZV90IHAybXQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9hY2Nlc3NfdCBwMm1hLCBt
Zm5fdCBtZm4pCiB7CiAgICAgdW5zaWduZWQgaW50IGZsYWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC0x
MzUzLDcgKzEzNTMsNyBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShz
dHJ1Y3QgZG9tYWluCiAgICAgICAgIGlmICggIWlzX2lvbW11X2VuYWJsZWQo
ZCkgKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHJldHVybiBp
b21tdV9sZWdhY3lfbWFwKGQsIF9kZm4oZ2ZuX2wpLCBfbWZuKGdmbl9sKSwg
UEFHRV9PUkRFUl80SywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSU9NTVVGX3JlYWRhYmxlIHwgSU9NTVVGX3dyaXRhYmxlKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2FjY2Vzc190b19pb21t
dV9mbGFncyhwMm1hKSk7CiAgICAgfQogCiAgICAgZ2ZuX2xvY2socDJtLCBn
Zm4sIDApOwotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9t
bXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUu
YwpAQCAtNDIsMTIgKzQyLDYgQEAKICNpbmNsdWRlICJ2dGQuaCIKICNpbmNs
dWRlICIuLi9hdHMuaCIKIAotc3RydWN0IG1hcHBlZF9ybXJyIHsKLSAgICBz
dHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7Ci0gICAgdTY0IGJhc2UsIGVuZDsKLSAg
ICB1bnNpZ25lZCBpbnQgY291bnQ7Ci19OwotCiAvKiBQb3NzaWJsZSB1bmZp
bHRlcmVkIExBUElDL01TSSBtZXNzYWdlcyBmcm9tIHVudHJ1c3RlZCBzb3Vy
Y2VzPyAqLwogYm9vbCBfX3JlYWRfbW9zdGx5IHVudHJ1c3RlZF9tc2k7CiAK
QEAgLTE4MDAsMTcgKzE3OTQsMTIgQEAgb3V0Ogogc3RhdGljIHZvaWQgaW9t
bXVfZG9tYWluX3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAg
c3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7Ci0gICAg
c3RydWN0IG1hcHBlZF9ybXJyICptcm1yciwgKnRtcDsKICAgICBjb25zdCBz
dHJ1Y3QgYWNwaV9kcmhkX3VuaXQgKmRyaGQ7CiAKICAgICBpZiAoIGxpc3Rf
ZW1wdHkoJmFjcGlfZHJoZF91bml0cykgKQogICAgICAgICByZXR1cm47CiAK
LSAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUgKCBtcm1yciwgdG1wLCAm
aGQtPmFyY2gubWFwcGVkX3JtcnJzLCBsaXN0ICkKLSAgICB7Ci0gICAgICAg
IGxpc3RfZGVsKCZtcm1yci0+bGlzdCk7Ci0gICAgICAgIHhmcmVlKG1ybXJy
KTsKLSAgICB9CisgICAgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKGQp
OwogCiAgICAgQVNTRVJUKGlzX2lvbW11X2VuYWJsZWQoZCkpOwogCkBAIC0x
OTY2LDc0ICsxOTU1LDYgQEAgc3RhdGljIHZvaWQgaW9tbXVfc2V0X3BnZChz
dHJ1Y3QgZG9tYWluCiAgICAgICAgIHBhZ2V0YWJsZV9nZXRfcGFkZHIocGFn
ZXRhYmxlX2Zyb21fbWZuKHBnZF9tZm4pKTsKIH0KIAotc3RhdGljIGludCBy
bXJyX2lkZW50aXR5X21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCwgYm9vbF90
IG1hcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHN0cnVjdCBhY3BpX3JtcnJfdW5pdCAqcm1yciwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHUzMiBmbGFnKQotewotICAgIHVuc2lnbmVk
IGxvbmcgYmFzZV9wZm4gPSBybXJyLT5iYXNlX2FkZHJlc3MgPj4gUEFHRV9T
SElGVF80SzsKLSAgICB1bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdFX0FM
SUdOXzRLKHJtcnItPmVuZF9hZGRyZXNzKSA+PiBQQUdFX1NISUZUXzRLOwot
ICAgIHN0cnVjdCBtYXBwZWRfcm1yciAqbXJtcnI7Ci0gICAgc3RydWN0IGRv
bWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7Ci0KLSAgICBBU1NFUlQo
cGNpZGV2c19sb2NrZWQoKSk7Ci0gICAgQVNTRVJUKHJtcnItPmJhc2VfYWRk
cmVzcyA8IHJtcnItPmVuZF9hZGRyZXNzKTsKLQotICAgIC8qCi0gICAgICog
Tm8gbmVlZCB0byBhY3F1aXJlIGhkLT5hcmNoLm1hcHBpbmdfbG9jazogQm90
aCBpbnNlcnRpb24gYW5kIHJlbW92YWwKLSAgICAgKiBnZXQgZG9uZSB3aGls
ZSBob2xkaW5nIHBjaWRldnNfbG9jay4KLSAgICAgKi8KLSAgICBsaXN0X2Zv
cl9lYWNoX2VudHJ5KCBtcm1yciwgJmhkLT5hcmNoLm1hcHBlZF9ybXJycywg
bGlzdCApCi0gICAgewotICAgICAgICBpZiAoIG1ybXJyLT5iYXNlID09IHJt
cnItPmJhc2VfYWRkcmVzcyAmJgotICAgICAgICAgICAgIG1ybXJyLT5lbmQg
PT0gcm1yci0+ZW5kX2FkZHJlc3MgKQotICAgICAgICB7Ci0gICAgICAgICAg
ICBpbnQgcmV0ID0gMDsKLQotICAgICAgICAgICAgaWYgKCBtYXAgKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgICsrbXJtcnItPmNvdW50Owot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICBpZiAoIC0tbXJtcnItPmNvdW50ICkKLSAgICAgICAgICAg
ICAgICByZXR1cm4gMDsKLQotICAgICAgICAgICAgd2hpbGUgKCBiYXNlX3Bm
biA8IGVuZF9wZm4gKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IGlmICggY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KGQsIGJhc2VfcGZuKSAp
Ci0gICAgICAgICAgICAgICAgICAgIHJldCA9IC1FTlhJTzsKLSAgICAgICAg
ICAgICAgICBiYXNlX3BmbisrOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBsaXN0X2RlbCgmbXJtcnItPmxpc3QpOwotICAgICAgICAgICAgeGZy
ZWUobXJtcnIpOwotICAgICAgICAgICAgcmV0dXJuIHJldDsKLSAgICAgICAg
fQotICAgIH0KLQotICAgIGlmICggIW1hcCApCi0gICAgICAgIHJldHVybiAt
RU5PRU5UOwotCi0gICAgd2hpbGUgKCBiYXNlX3BmbiA8IGVuZF9wZm4gKQot
ICAgIHsKLSAgICAgICAgaW50IGVyciA9IHNldF9pZGVudGl0eV9wMm1fZW50
cnkoZCwgYmFzZV9wZm4sIHAybV9hY2Nlc3NfcncsIGZsYWcpOwotCi0gICAg
ICAgIGlmICggZXJyICkKLSAgICAgICAgICAgIHJldHVybiBlcnI7Ci0gICAg
ICAgIGJhc2VfcGZuKys7Ci0gICAgfQotCi0gICAgbXJtcnIgPSB4bWFsbG9j
KHN0cnVjdCBtYXBwZWRfcm1ycik7Ci0gICAgaWYgKCAhbXJtcnIgKQotICAg
ICAgICByZXR1cm4gLUVOT01FTTsKLSAgICBtcm1yci0+YmFzZSA9IHJtcnIt
PmJhc2VfYWRkcmVzczsKLSAgICBtcm1yci0+ZW5kID0gcm1yci0+ZW5kX2Fk
ZHJlc3M7Ci0gICAgbXJtcnItPmNvdW50ID0gMTsKLSAgICBsaXN0X2FkZF90
YWlsKCZtcm1yci0+bGlzdCwgJmhkLT5hcmNoLm1hcHBlZF9ybXJycyk7Ci0K
LSAgICByZXR1cm4gMDsKLX0KLQogc3RhdGljIGludCBpbnRlbF9pb21tdV9h
ZGRfZGV2aWNlKHU4IGRldmZuLCBzdHJ1Y3QgcGNpX2RldiAqcGRldikKIHsK
ICAgICBzdHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnI7CkBAIC0yMDY1LDcg
KzE5ODYsOSBAQCBzdGF0aWMgaW50IGludGVsX2lvbW11X2FkZF9kZXZpY2Uo
dTggZGV2CiAgICAgICAgICAgICAgKiBTaW5jZSBSTVJScyBhcmUgYWx3YXlz
IHJlc2VydmVkIGluIHRoZSBlODIwIG1hcCBmb3IgdGhlIGhhcmR3YXJlCiAg
ICAgICAgICAgICAgKiBkb21haW4sIHRoZXJlIHNob3VsZG4ndCBiZSBhIGNv
bmZsaWN0LgogICAgICAgICAgICAgICovCi0gICAgICAgICAgICByZXQgPSBy
bXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWluLCAxLCBybXJyLCAw
KTsKKyAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50aXR5X21hcHBpbmco
cGRldi0+ZG9tYWluLCBwMm1fYWNjZXNzX3J3LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5iYXNlX2FkZHJlc3Ms
IHJtcnItPmVuZF9hZGRyZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAwKTsKICAgICAgICAgICAgIGlmICggcmV0ICkK
ICAgICAgICAgICAgICAgICBkcHJpbnRrKFhFTkxPR19FUlIgVlREUFJFRklY
LCAiZCVkOiBSTVJSIG1hcHBpbmcgZmFpbGVkXG4iLAogICAgICAgICAgICAg
ICAgICAgICAgICAgcGRldi0+ZG9tYWluLT5kb21haW5faWQpOwpAQCAtMjEx
MCw3ICsyMDMzLDggQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9yZW1vdmVf
ZGV2aWNlKHU4CiAgICAgICAgICAqIEFueSBmbGFnIGlzIG5vdGhpbmcgdG8g
Y2xlYXIgdGhlc2UgbWFwcGluZ3MgYnV0IGhlcmUKICAgICAgICAgICogaXRz
IGFsd2F5cyBzYWZlIGFuZCBzdHJpY3QgdG8gc2V0IDAuCiAgICAgICAgICAq
LwotICAgICAgICBybXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWlu
LCAwLCBybXJyLCAwKTsKKyAgICAgICAgaW9tbXVfaWRlbnRpdHlfbWFwcGlu
ZyhwZGV2LT5kb21haW4sIHAybV9hY2Nlc3NfeCwgcm1yci0+YmFzZV9hZGRy
ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmVu
ZF9hZGRyZXNzLCAwKTsKICAgICB9CiAKICAgICByZXR1cm4gZG9tYWluX2Nv
bnRleHRfdW5tYXAocGRldi0+ZG9tYWluLCBkZXZmbiwgcGRldik7CkBAIC0y
MzA5LDcgKzIyMzMsOCBAQCBzdGF0aWMgdm9pZCBfX2h3ZG9tX2luaXQgc2V0
dXBfaHdkb21fcm1yCiAgICAgICAgICAqIGRvbWFpbiwgdGhlcmUgc2hvdWxk
bid0IGJlIGEgY29uZmxpY3QuIFNvIGl0cyBhbHdheXMgc2FmZSBhbmQKICAg
ICAgICAgICogc3RyaWN0IHRvIHNldCAwLgogICAgICAgICAgKi8KLSAgICAg
ICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKGQsIDEsIHJtcnIsIDAp
OworICAgICAgICByZXQgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQsIHAy
bV9hY2Nlc3NfcncsIHJtcnItPmJhc2VfYWRkcmVzcywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5lbmRfYWRkcmVzcywg
MCk7CiAgICAgICAgIGlmICggcmV0ICkKICAgICAgICAgICAgIGRwcmludGso
WEVOTE9HX0VSUiBWVERQUkVGSVgsCiAgICAgICAgICAgICAgICAgICAgICAi
SU9NTVU6IG1hcHBpbmcgcmVzZXJ2ZWQgcmVnaW9uIGZhaWxlZFxuIik7CkBA
IC0yNDgwLDcgKzI0MDUsOSBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2Rldmlj
ZV9vd25lcnNoaXAoCiAgICAgICAgICAgICAgICAgICogQW55IFJNUlIgZmxh
ZyBpcyBhbHdheXMgaWdub3JlZCB3aGVuIHJlbW92ZSBhIGRldmljZSwKICAg
ICAgICAgICAgICAgICAgKiBidXQgaXRzIGFsd2F5cyBzYWZlIGFuZCBzdHJp
Y3QgdG8gc2V0IDAuCiAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAg
ICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKHNvdXJjZSwgMCwg
cm1yciwgMCk7CisgICAgICAgICAgICAgICAgcmV0ID0gaW9tbXVfaWRlbnRp
dHlfbWFwcGluZyhzb3VyY2UsIHAybV9hY2Nlc3NfeCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmJhc2Vf
YWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCAwKTsKICAgICAgICAgICAg
ICAgICBpZiAoIHJldCAhPSAtRU5PRU5UICkKICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHJldDsKICAgICAgICAgICAgIH0KQEAgLTI1NzcsNyArMjUw
NCw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfYXNzaWduX2RldmljZSgK
ICAgICAgICAgICAgICBQQ0lfQlVTKGJkZikgPT0gYnVzICYmCiAgICAgICAg
ICAgICAgUENJX0RFVkZOMihiZGYpID09IGRldmZuICkKICAgICAgICAgewot
ICAgICAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKGQsIDEs
IHJtcnIsIGZsYWcpOworICAgICAgICAgICAgcmV0ID0gaW9tbXVfaWRlbnRp
dHlfbWFwcGluZyhkLCBwMm1fYWNjZXNzX3J3LCBybXJyLT5iYXNlX2FkZHJl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJtcnItPmVuZF9hZGRyZXNzLCBmbGFnKTsKICAgICAgICAgICAgIGlmICgg
cmV0ICkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBpbnQgcmM7
Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jCisr
KyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jCkBAIC0x
MzksNyArMTM5LDcgQEAgaW50IGFyY2hfaW9tbXVfZG9tYWluX2luaXQoc3Ry
dWN0IGRvbWFpbgogICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9t
X2lvbW11KGQpOwogCiAgICAgc3Bpbl9sb2NrX2luaXQoJmhkLT5hcmNoLm1h
cHBpbmdfbG9jayk7Ci0gICAgSU5JVF9MSVNUX0hFQUQoJmhkLT5hcmNoLm1h
cHBlZF9ybXJycyk7CisgICAgSU5JVF9MSVNUX0hFQUQoJmhkLT5hcmNoLmlk
ZW50aXR5X21hcHMpOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xNDgsNiAr
MTQ4LDk5IEBAIHZvaWQgYXJjaF9pb21tdV9kb21haW5fZGVzdHJveShzdHJ1
Y3QgZG8KIHsKIH0KIAorc3RydWN0IGlkZW50aXR5X21hcCB7CisgICAgc3Ry
dWN0IGxpc3RfaGVhZCBsaXN0OworICAgIHBhZGRyX3QgYmFzZSwgZW5kOwor
ICAgIHAybV9hY2Nlc3NfdCBhY2Nlc3M7CisgICAgdW5zaWduZWQgaW50IGNv
dW50OworfTsKKworaW50IGlvbW11X2lkZW50aXR5X21hcHBpbmcoc3RydWN0
IGRvbWFpbiAqZCwgcDJtX2FjY2Vzc190IHAybWEsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgZW5kLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGZsYWcpCit7
CisgICAgdW5zaWduZWQgbG9uZyBiYXNlX3BmbiA9IGJhc2UgPj4gUEFHRV9T
SElGVF80SzsKKyAgICB1bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdFX0FM
SUdOXzRLKGVuZCkgPj4gUEFHRV9TSElGVF80SzsKKyAgICBzdHJ1Y3QgaWRl
bnRpdHlfbWFwICptYXA7CisgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQg
PSBkb21faW9tbXUoZCk7CisKKyAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQo
KSk7CisgICAgQVNTRVJUKGJhc2UgPCBlbmQpOworCisgICAgLyoKKyAgICAg
KiBObyBuZWVkIHRvIGFjcXVpcmUgaGQtPmFyY2gubWFwcGluZ19sb2NrOiBC
b3RoIGluc2VydGlvbiBhbmQgcmVtb3ZhbAorICAgICAqIGdldCBkb25lIHdo
aWxlIGhvbGRpbmcgcGNpZGV2c19sb2NrLgorICAgICAqLworICAgIGxpc3Rf
Zm9yX2VhY2hfZW50cnkoIG1hcCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMs
IGxpc3QgKQorICAgIHsKKyAgICAgICAgaWYgKCBtYXAtPmJhc2UgPT0gYmFz
ZSAmJiBtYXAtPmVuZCA9PSBlbmQgKQorICAgICAgICB7CisgICAgICAgICAg
ICBpbnQgcmV0ID0gMDsKKworICAgICAgICAgICAgaWYgKCBwMm1hICE9IHAy
bV9hY2Nlc3NfeCApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aWYgKCBtYXAtPmFjY2VzcyAhPSBwMm1hICkKKyAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIC1FQUREUklOVVNFOworICAgICAgICAgICAgICAgICsrbWFw
LT5jb3VudDsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgaWYgKCAtLW1hcC0+Y291bnQgKQorICAg
ICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAo
IGJhc2VfcGZuIDwgZW5kX3BmbiApCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgaWYgKCBjbGVhcl9pZGVudGl0eV9wMm1fZW50cnkoZCwgYmFz
ZV9wZm4pICkKKyAgICAgICAgICAgICAgICAgICAgcmV0ID0gLUVOWElPOwor
ICAgICAgICAgICAgICAgIGJhc2VfcGZuKys7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOworICAgICAgICAg
ICAgeGZyZWUobWFwKTsKKworICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAg
ICAgICAgfQorCisgICAgICAgIGlmICggZW5kID49IG1hcC0+YmFzZSAmJiBt
YXAtPmVuZCA+PSBiYXNlICkKKyAgICAgICAgICAgIHJldHVybiAtRUFERFJJ
TlVTRTsKKyAgICB9CisKKyAgICBpZiAoIHAybWEgPT0gcDJtX2FjY2Vzc194
ICkKKyAgICAgICAgcmV0dXJuIC1FTk9FTlQ7CisKKyAgICB3aGlsZSAoIGJh
c2VfcGZuIDwgZW5kX3BmbiApCisgICAgeworICAgICAgICBpbnQgZXJyID0g
c2V0X2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3BmbiwgcDJtYSwgZmxh
Zyk7CisKKyAgICAgICAgaWYgKCBlcnIgKQorICAgICAgICAgICAgcmV0dXJu
IGVycjsKKyAgICAgICAgYmFzZV9wZm4rKzsKKyAgICB9CisKKyAgICBtYXAg
PSB4bWFsbG9jKHN0cnVjdCBpZGVudGl0eV9tYXApOworICAgIGlmICggIW1h
cCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworICAgIG1hcC0+YmFzZSA9
IGJhc2U7CisgICAgbWFwLT5lbmQgPSBlbmQ7CisgICAgbWFwLT5hY2Nlc3Mg
PSBwMm1hOworICAgIG1hcC0+Y291bnQgPSAxOworICAgIGxpc3RfYWRkX3Rh
aWwoJm1hcC0+bGlzdCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMpOworCisg
ICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFwX3Rl
YXJkb3duKHN0cnVjdCBkb21haW4gKmQpCit7CisgICAgc3RydWN0IGRvbWFp
bl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7CisgICAgc3RydWN0IGlkZW50
aXR5X21hcCAqbWFwLCAqdG1wOworCisgICAgbGlzdF9mb3JfZWFjaF9lbnRy
eV9zYWZlICggbWFwLCB0bXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzLCBs
aXN0ICkKKyAgICB7CisgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOwor
ICAgICAgICB4ZnJlZShtYXApOworICAgIH0KK30KKwogc3RhdGljIGJvb2wg
X19od2RvbV9pbml0IGh3ZG9tX2lvbW11X21hcChjb25zdCBzdHJ1Y3QgZG9t
YWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBsb25nIHBmbiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZuKQot
LS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2lvbW11LmgKKysrIGIveGVuL2lu
Y2x1ZGUvYXNtLXg4Ni9pb21tdS5oCkBAIC0xNiw2ICsxNiw3IEBACiAKICNp
bmNsdWRlIDx4ZW4vZXJybm8uaD4KICNpbmNsdWRlIDx4ZW4vbGlzdC5oPgor
I2luY2x1ZGUgPHhlbi9tZW1fYWNjZXNzLmg+CiAjaW5jbHVkZSA8eGVuL3Nw
aW5sb2NrLmg+CiAjaW5jbHVkZSA8YXNtL2FwaWNkZWYuaD4KICNpbmNsdWRl
IDxhc20vcHJvY2Vzc29yLmg+CkBAIC00OSw3ICs1MCw3IEBAIHN0cnVjdCBh
cmNoX2lvbW11CiAgICAgc3BpbmxvY2tfdCBtYXBwaW5nX2xvY2s7ICAgICAg
ICAgICAgLyogaW8gcGFnZSB0YWJsZSBsb2NrICovCiAgICAgaW50IGFnYXc7
ICAgICAvKiBhZGp1c3RlZCBndWVzdCBhZGRyZXNzIHdpZHRoLCAwIGlzIGxl
dmVsIDIgMzAtYml0ICovCiAgICAgdTY0IGlvbW11X2JpdG1hcDsgICAgICAg
ICAgICAgIC8qIGJpdG1hcCBvZiBpb21tdShzKSB0aGF0IHRoZSBkb21haW4g
dXNlcyAqLwotICAgIHN0cnVjdCBsaXN0X2hlYWQgbWFwcGVkX3JtcnJzOwor
ICAgIHN0cnVjdCBsaXN0X2hlYWQgaWRlbnRpdHlfbWFwczsKIAogICAgIC8q
IGFtZCBpb21tdSBzdXBwb3J0ICovCiAgICAgaW50IHBhZ2luZ19tb2RlOwpA
QCAtMTEyLDYgKzExMywxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW9tbXVf
ZGlzYWJsZV94MmFwaWMoCiAgICAgICAgIGlvbW11X29wcy5kaXNhYmxlX3gy
YXBpYygpOwogfQogCitpbnQgaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhzdHJ1
Y3QgZG9tYWluICpkLCBwMm1fYWNjZXNzX3QgcDJtYSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBlbmQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZyk7
Cit2b2lkIGlvbW11X2lkZW50aXR5X21hcF90ZWFyZG93bihzdHJ1Y3QgZG9t
YWluICpkKTsKKwogZXh0ZXJuIGJvb2wgdW50cnVzdGVkX21zaTsKIAogaW50
IHBpX3VwZGF0ZV9pcnRlKGNvbnN0IHN0cnVjdCBwaV9kZXNjICpwaV9kZXNj
LCBjb25zdCBzdHJ1Y3QgcGlycSAqcGlycSwKLS0tIGEveGVuL2luY2x1ZGUv
YXNtLXg4Ni9wMm0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5o
CkBAIC05MDAsNiArOTAwLDM0IEBAIHN0cnVjdCBwMm1fZG9tYWluICpwMm1f
Z2V0X2FsdHAybShzdHJ1Y3QKIHN0YXRpYyBpbmxpbmUgdm9pZCBwMm1fYWx0
cDJtX2NoZWNrKHN0cnVjdCB2Y3B1ICp2LCB1aW50MTZfdCBpZHgpIHt9CiAj
ZW5kaWYKIAorLyogcDJtIGFjY2VzcyB0byBJT01NVSBmbGFncyAqLworc3Rh
dGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2FjY2Vzc190b19pb21tdV9m
bGFncyhwMm1fYWNjZXNzX3QgcDJtYSkKK3sKKyAgICBzd2l0Y2ggKCBwMm1h
ICkKKyAgICB7CisgICAgY2FzZSBwMm1fYWNjZXNzX3J3OgorICAgIGNhc2Ug
cDJtX2FjY2Vzc19yd3g6CisgICAgICAgIHJldHVybiBJT01NVUZfcmVhZGFi
bGUgfCBJT01NVUZfd3JpdGFibGU7CisKKyAgICBjYXNlIHAybV9hY2Nlc3Nf
cjoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcng6CisgICAgY2FzZSBwMm1fYWNj
ZXNzX3J4MnJ3OgorICAgICAgICByZXR1cm4gSU9NTVVGX3JlYWRhYmxlOwor
CisgICAgY2FzZSBwMm1fYWNjZXNzX3c6CisgICAgY2FzZSBwMm1fYWNjZXNz
X3d4OgorICAgICAgICByZXR1cm4gSU9NTVVGX3dyaXRhYmxlOworCisgICAg
Y2FzZSBwMm1fYWNjZXNzX246CisgICAgY2FzZSBwMm1fYWNjZXNzX3g6Cisg
ICAgY2FzZSBwMm1fYWNjZXNzX24ycnd4OgorICAgICAgICByZXR1cm4gMDsK
KyAgICB9CisKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKKyAgICByZXR1
cm4gMDsKK30KKwogLyoKICAqIHAybSB0eXBlIHRvIElPTU1VIGZsYWdzCiAg
Ki8KQEAgLTkyMSw5ICs5NDksMTAgQEAgc3RhdGljIGlubGluZSB1bnNpZ25l
ZCBpbnQgcDJtX2dldF9pb21tdQogICAgICAgICBmbGFncyA9IElPTU1VRl9y
ZWFkYWJsZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBwMm1fbW1pb19k
aXJlY3Q6Ci0gICAgICAgIGZsYWdzID0gSU9NTVVGX3JlYWRhYmxlOwotICAg
ICAgICBpZiAoICFyYW5nZXNldF9jb250YWluc19zaW5nbGV0b24obW1pb19y
b19yYW5nZXMsIG1mbl94KG1mbikpICkKLSAgICAgICAgICAgIGZsYWdzIHw9
IElPTU1VRl93cml0YWJsZTsKKyAgICAgICAgZmxhZ3MgPSBwMm1fYWNjZXNz
X3RvX2lvbW11X2ZsYWdzKHAybWEpOworICAgICAgICBpZiAoIChmbGFncyAm
IElPTU1VRl93cml0YWJsZSkgJiYKKyAgICAgICAgICAgICByYW5nZXNldF9j
b250YWluc19zaW5nbGV0b24obW1pb19yb19yYW5nZXMsIG1mbl94KG1mbikp
ICkKKyAgICAgICAgICAgIGZsYWdzICY9IH5JT01NVUZfd3JpdGFibGU7CiAg
ICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIGZsYWdzID0g
MDsK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXUuaAorKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXUu
aApAQCAtMjMyLDggKzIzMiwxMCBAQCBpbnQgX19tdXN0X2NoZWNrIGFtZF9p
b21tdV91bm1hcF9wYWdlKHN0CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZmx1c2hfZmxhZ3MpOwogaW50
IF9fbXVzdF9jaGVjayBhbWRfaW9tbXVfYWxsb2Nfcm9vdChzdHJ1Y3QgZG9t
YWluX2lvbW11ICpoZCk7CiBpbnQgYW1kX2lvbW11X3Jlc2VydmVfZG9tYWlu
X3VuaXR5X21hcChzdHJ1Y3QgZG9tYWluICpkb21haW4sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IHBoeXNfYWRk
ciwgdW5zaWduZWQgbG9uZyBzaXplLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IGl3LCBpbnQgaXIpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGl2
cnNfdW5pdHlfbWFwICptYXAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZyk7CitpbnQgYW1kX2lv
bW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X3VubWFwKHN0cnVjdCBkb21haW4g
KmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqbWFwKTsKIGludCBfX211
c3RfY2hlY2sgYW1kX2lvbW11X2ZsdXNoX2lvdGxiX3BhZ2VzKHN0cnVjdCBk
b21haW4gKmQsIGRmbl90IGRmbiwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBwYWdlX2NvdW50
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IGZsdXNoX2ZsYWdzKTsKLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X21hcC5jCisrKyBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9tYXAuYwpAQCAtNDIwLDM4ICs0
MjAsNDkgQEAgaW50IGFtZF9pb21tdV9mbHVzaF9pb3RsYl9hbGwoc3RydWN0
IGRvbQogICAgIHJldHVybiAwOwogfQogCi1pbnQgYW1kX2lvbW11X3Jlc2Vy
dmVfZG9tYWluX3VuaXR5X21hcChzdHJ1Y3QgZG9tYWluICpkb21haW4sCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90
IHBoeXNfYWRkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSwgaW50IGl3LCBpbnQgaXIpCitp
bnQgYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcChzdHJ1Y3Qg
ZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3Qgc3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBp
bnQgZmxhZykKIHsKLSAgICB1bnNpZ25lZCBsb25nIG5wYWdlcywgaTsKLSAg
ICB1bnNpZ25lZCBsb25nIGdmbjsKLSAgICB1bnNpZ25lZCBpbnQgZmxhZ3Mg
PSAhIWlyOwotICAgIHVuc2lnbmVkIGludCBmbHVzaF9mbGFncyA9IDA7Ci0g
ICAgaW50IHJ0ID0gMDsKLQotICAgIGlmICggaXcgKQotICAgICAgICBmbGFn
cyB8PSBJT01NVUZfd3JpdGFibGU7Ci0KLSAgICBucGFnZXMgPSByZWdpb25f
dG9fcGFnZXMocGh5c19hZGRyLCBzaXplKTsKLSAgICBnZm4gPSBwaHlzX2Fk
ZHIgPj4gUEFHRV9TSElGVDsKLSAgICBmb3IgKCBpID0gMDsgaSA8IG5wYWdl
czsgaSsrICkKKyAgICBpbnQgcmM7CisKKyAgICBpZiAoIGQgPT0gZG9tX2lv
ICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCByYyA9IDA7ICFy
YyAmJiBtYXA7IG1hcCA9IG1hcC0+bmV4dCApCiAgICAgewotICAgICAgICB1
bnNpZ25lZCBsb25nIGZyYW1lID0gZ2ZuICsgaTsKKyAgICAgICAgcDJtX2Fj
Y2Vzc190IHAybWEgPSBwMm1fYWNjZXNzX247CisKKyAgICAgICAgaWYgKCBt
YXAtPnJlYWQgKQorICAgICAgICAgICAgcDJtYSB8PSBwMm1fYWNjZXNzX3I7
CisgICAgICAgIGlmICggbWFwLT53cml0ZSApCisgICAgICAgICAgICBwMm1h
IHw9IHAybV9hY2Nlc3NfdzsKIAotICAgICAgICBydCA9IGFtZF9pb21tdV9t
YXBfcGFnZShkb21haW4sIF9kZm4oZnJhbWUpLCBfbWZuKGZyYW1lKSwgZmxh
Z3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbHVzaF9m
bGFncyk7Ci0gICAgICAgIGlmICggcnQgIT0gMCApCi0gICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgcmMgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQs
IHAybWEsIG1hcC0+YWRkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1hcC0+YWRkciArIG1hcC0+bGVuZ3RoIC0gMSwgZmxhZyk7
CiAgICAgfQogCi0gICAgLyogVXNlIHdoaWxlLWJyZWFrIHRvIGF2b2lkIGNv
bXBpbGVyIHdhcm5pbmcgKi8KLSAgICB3aGlsZSAoIGZsdXNoX2ZsYWdzICYm
Ci0gICAgICAgICAgICBhbWRfaW9tbXVfZmx1c2hfaW90bGJfcGFnZXMoZG9t
YWluLCBfZGZuKGdmbiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbnBhZ2VzLCBmbHVzaF9mbGFncykgKQotICAgICAgICBi
cmVhazsKKyAgICByZXR1cm4gcmM7Cit9CisKK2ludCBhbWRfaW9tbXVfcmVz
ZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
c3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXApCit7CisgICAgaW50IHJjOwor
CisgICAgaWYgKCBkID09IGRvbV9pbyApCisgICAgICAgIHJldHVybiAwOwor
CisgICAgZm9yICggcmMgPSAwOyBtYXA7IG1hcCA9IG1hcC0+bmV4dCApCisg
ICAgeworICAgICAgICBpbnQgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGlu
ZyhkLCBwMm1fYWNjZXNzX3gsIG1hcC0+YWRkciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRyICsgbWFwLT5s
ZW5ndGggLSAxLCAwKTsKKworICAgICAgICBpZiAoIHJldCAmJiByZXQgIT0g
LUVOT0VOVCAmJiAhcmMgKQorICAgICAgICAgICAgcmMgPSByZXQ7CisgICAg
fQogCi0gICAgcmV0dXJuIHJ0OworICAgIHJldHVybiByYzsKIH0KIAogaW50
IF9faW5pdCBhbWRfaW9tbXVfcXVhcmFudGluZV9pbml0KHN0cnVjdCBkb21h
aW4gKmQpCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lf
YW1kX2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L3BjaV9hbWRfaW9tbXUuYwpAQCAtMzI3LDYgKzMyNyw3IEBAIHN0YXRpYyBp
bnQgcmVhc3NpZ25fZGV2aWNlKHN0cnVjdCBkb21haW4KICAgICBzdHJ1Y3Qg
YW1kX2lvbW11ICppb21tdTsKICAgICBpbnQgYmRmLCByYzsKICAgICBzdHJ1
Y3QgZG9tYWluX2lvbW11ICp0ID0gZG9tX2lvbW11KHRhcmdldCk7CisgICAg
Y29uc3Qgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwogCiAgICAgYmRmID0gUENJ
X0JERjIocGRldi0+YnVzLCBwZGV2LT5kZXZmbik7CiAgICAgaW9tbXUgPSBm
aW5kX2lvbW11X2Zvcl9kZXZpY2UocGRldi0+c2VnLCBiZGYpOwpAQCAtMzQx
LDEwICszNDIsMjQgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3Ry
dWN0IGRvbWFpbgogCiAgICAgYW1kX2lvbW11X2Rpc2FibGVfZG9tYWluX2Rl
dmljZShzb3VyY2UsIGlvbW11LCBkZXZmbiwgcGRldik7CiAKLSAgICBpZiAo
IGRldmZuID09IHBkZXYtPmRldmZuICkKKyAgICAvKgorICAgICAqIElmIHRo
ZSBkZXZpY2UgYmVsb25ncyB0byB0aGUgaGFyZHdhcmUgZG9tYWluLCBhbmQg
aXQgaGFzIGEgdW5pdHkgbWFwcGluZywKKyAgICAgKiBkb24ndCByZW1vdmUg
aXQgZnJvbSB0aGUgaGFyZHdhcmUgZG9tYWluLCBiZWNhdXNlIEJJT1MgbWF5
IHJlZmVyZW5jZSB0aGF0CisgICAgICogbWFwcGluZy4KKyAgICAgKi8KKyAg
ICBpZiAoICFpc19oYXJkd2FyZV9kb21haW4oc291cmNlKSApCisgICAgewor
ICAgICAgICByYyA9IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV91
bm1hcCgKKyAgICAgICAgICAgICAgICAgc291cmNlLAorICAgICAgICAgICAg
ICAgICBpdnJzX21hcHBpbmdzW2dldF9kbWFfcmVxdWVzdG9yX2lkKHBkZXYt
PnNlZywgYmRmKV0udW5pdHlfbWFwKTsKKyAgICAgICAgaWYgKCByYyApCisg
ICAgICAgICAgICByZXR1cm4gcmM7CisgICAgfQorCisgICAgaWYgKCBkZXZm
biA9PSBwZGV2LT5kZXZmbiAmJiBwZGV2LT5kb21haW4gIT0gZG9tX2lvICkK
ICAgICB7Ci0gICAgICAgIGxpc3RfbW92ZSgmcGRldi0+ZG9tYWluX2xpc3Qs
ICZ0YXJnZXQtPnBkZXZfbGlzdCk7Ci0gICAgICAgIHBkZXYtPmRvbWFpbiA9
IHRhcmdldDsKKyAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21haW5fbGlz
dCwgJmRvbV9pby0+cGRldl9saXN0KTsKKyAgICAgICAgcGRldi0+ZG9tYWlu
ID0gZG9tX2lvOwogICAgIH0KIAogICAgIHJjID0gYWxsb2NhdGVfZG9tYWlu
X3Jlc291cmNlcyh0KTsKQEAgLTM1Niw2ICszNzEsMTIgQEAgc3RhdGljIGlu
dCByZWFzc2lnbl9kZXZpY2Uoc3RydWN0IGRvbWFpbgogICAgICAgICAgICAg
ICAgICAgICBwZGV2LT5zZWcsIHBkZXYtPmJ1cywgUENJX1NMT1QoZGV2Zm4p
LCBQQ0lfRlVOQyhkZXZmbiksCiAgICAgICAgICAgICAgICAgICAgIHNvdXJj
ZS0+ZG9tYWluX2lkLCB0YXJnZXQtPmRvbWFpbl9pZCk7CiAKKyAgICBpZiAo
IGRldmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRvbWFpbiAhPSB0YXJn
ZXQgKQorICAgIHsKKyAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21haW5f
bGlzdCwgJnRhcmdldC0+cGRldl9saXN0KTsKKyAgICAgICAgcGRldi0+ZG9t
YWluID0gdGFyZ2V0OworICAgIH0KKwogICAgIHJldHVybiAwOwogfQogCkBA
IC0zNjYsMjAgKzM4NywyOCBAQCBzdGF0aWMgaW50IGFtZF9pb21tdV9hc3Np
Z25fZGV2aWNlKHN0cnVjCiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2
cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwog
ICAgIGludCBiZGYgPSBQQ0lfQkRGMihwZGV2LT5idXMsIGRldmZuKTsKICAg
ICBpbnQgcmVxX2lkID0gZ2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRldi0+c2Vn
LCBiZGYpOwotICAgIGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5p
dHlfbWFwOworICAgIGludCByYyA9IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFp
bl91bml0eV9tYXAoCisgICAgICAgICAgICAgICAgIGQsIGl2cnNfbWFwcGlu
Z3NbcmVxX2lkXS51bml0eV9tYXAsIGZsYWcpOworCisgICAgaWYgKCAhcmMg
KQorICAgICAgICByYyA9IHJlYXNzaWduX2RldmljZShwZGV2LT5kb21haW4s
IGQsIGRldmZuLCBwZGV2KTsKIAotICAgIGZvciAoIHVuaXR5X21hcCA9IGl2
cnNfbWFwcGluZ3NbcmVxX2lkXS51bml0eV9tYXA7IHVuaXR5X21hcDsKLSAg
ICAgICAgICB1bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQorICAgIGlm
ICggcmMgJiYgIWlzX2hhcmR3YXJlX2RvbWFpbihkKSApCiAgICAgewotICAg
ICAgICBpbnQgcmMgPSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlf
bWFwKAotICAgICAgICAgICAgICAgICAgICAgZCwgdW5pdHlfbWFwLT5hZGRy
LCB1bml0eV9tYXAtPmxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgIHVu
aXR5X21hcC0+d3JpdGUsIHVuaXR5X21hcC0+cmVhZCk7CisgICAgICAgIGlu
dCByZXQgPSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAo
CisgICAgICAgICAgICAgICAgICAgICAgZCwgaXZyc19tYXBwaW5nc1tyZXFf
aWRdLnVuaXR5X21hcCk7CiAKLSAgICAgICAgaWYgKCByYyApCi0gICAgICAg
ICAgICByZXR1cm4gcmM7CisgICAgICAgIGlmICggcmV0ICkKKyAgICAgICAg
eworICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgIkFNRC1WaTogIgor
ICAgICAgICAgICAgICAgICAgICJ1bml0eS11bm1hcCBmb3IgJXBkLyUwNHg6
JTAyeDolMDJ4LiV1IGZhaWxlZCAoJWQpXG4iLAorICAgICAgICAgICAgICAg
ICAgIGQsIHBkZXYtPnNlZywgcGRldi0+YnVzLAorICAgICAgICAgICAgICAg
ICAgIFBDSV9TTE9UKGRldmZuKSwgUENJX0ZVTkMoZGV2Zm4pLCByZXQpOwor
ICAgICAgICAgICAgZG9tYWluX2NyYXNoKGQpOworICAgICAgICB9CiAgICAg
fQogCi0gICAgcmV0dXJuIHJlYXNzaWduX2RldmljZShwZGV2LT5kb21haW4s
IGQsIGRldmZuLCBwZGV2KTsKKyAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRp
YyB2b2lkIGRlYWxsb2NhdGVfbmV4dF9wYWdlX3RhYmxlKHN0cnVjdCBwYWdl
X2luZm8gKnBnLCBpbnQgbGV2ZWwpCkBAIC00MzgsNiArNDY3LDcgQEAgc3Rh
dGljIHZvaWQgZGVhbGxvY2F0ZV9pb21tdV9wYWdlX3RhYmxlcwogCiBzdGF0
aWMgdm9pZCBhbWRfaW9tbXVfZG9tYWluX2Rlc3Ryb3koc3RydWN0IGRvbWFp
biAqZCkKIHsKKyAgICBpb21tdV9pZGVudGl0eV9tYXBfdGVhcmRvd24oZCk7
CiAgICAgZGVhbGxvY2F0ZV9pb21tdV9wYWdlX3RhYmxlcyhkKTsKICAgICBh
bWRfaW9tbXVfZmx1c2hfYWxsX3BhZ2VzKGQpOwogfQo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdS5oCisrKyBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdS5oCkBAIC0zMDgsNiArMzA4LDgg
QEAgZXh0ZXJuIHN0cnVjdCBocGV0X3NiZGYgewogICAgIH0gaW5pdDsKIH0g
aHBldF9zYmRmOwogCitleHRlcm4gaW50IGFtZF9pb21tdV9taW5fcGFnaW5n
X21vZGU7CisKIGV4dGVybiB2b2lkICpzaGFyZWRfaW50cmVtYXBfdGFibGU7
CiBleHRlcm4gdW5zaWduZWQgbG9uZyAqc2hhcmVkX2ludHJlbWFwX2ludXNl
OwogCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9h
Y3BpLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2FjcGkuYwpAQCAtMTE4LDEyICsxMTgsOCBAQCBzdGF0aWMgc3RydWN0IGFt
ZF9pb21tdSAqIF9faW5pdCBmaW5kX2lvCiB9CiAKIHN0YXRpYyBpbnQgX19p
bml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKAotICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBs
aW1pdCwKLSAgICBib29sIGFsbCwgYm9vbCBpdywgYm9vbCBpcikKKyAgICBz
dHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGxpbWl0LCBib29sIGFsbCkKIHsKLSAgICBpZiAoICFpciB8fCAhaXcgKQot
ICAgICAgICByZXR1cm4gLUVQRVJNOwotCiAgICAgLyogbmVlZCB0byBleHRl
bmQgZXhjbHVzaW9uIHJhbmdlPyAqLwogICAgIGlmICggaW9tbXUtPmV4Y2x1
c2lvbl9lbmFibGUgKQogICAgIHsKQEAgLTE1MiwxNCArMTQ4LDE4IEBAIHN0
YXRpYyBpbnQgX19pbml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl8KIHsKICAg
ICBzdHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9p
dnJzX21hcHBpbmdzKHNlZyk7CiAgICAgc3RydWN0IGl2cnNfdW5pdHlfbWFw
ICp1bml0eV9tYXAgPSBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwOwor
ICAgIGludCBwYWdpbmdfbW9kZSA9IGFtZF9pb21tdV9nZXRfcGFnaW5nX21v
ZGUoUEZOX1VQKGJhc2UgKyBsZW5ndGgpKTsKKworICAgIGlmICggcGFnaW5n
X21vZGUgPCAwICkKKyAgICAgICAgcmV0dXJuIHBhZ2luZ19tb2RlOwogCiAg
ICAgLyogQ2hlY2sgZm9yIG92ZXJsYXBzLiAqLwogICAgIGZvciAoIDsgdW5p
dHlfbWFwOyB1bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQogICAgIHsK
ICAgICAgICAgLyoKICAgICAgICAgICogRXhhY3QgbWF0Y2hlcyBhcmUgb2th
eS4gVGhpcyBjYW4gaW4gcGFydGljdWxhciBoYXBwZW4gd2hlbgotICAgICAg
ICAgKiByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgpIGNh
bGxzIGhlcmUgdHdpY2UgZm9yIHRoZQotICAgICAgICAgKiBzYW1lIChzLGIs
ZCxmKS4KKyAgICAgICAgICogcmVnaXN0ZXJfcmFuZ2VfZm9yX2RldmljZSgp
IGNhbGxzIGhlcmUgdHdpY2UgZm9yIHRoZSBzYW1lCisgICAgICAgICAqIChz
LGIsZCxmKS4KICAgICAgICAgICovCiAgICAgICAgIGlmICggYmFzZSA9PSB1
bml0eV9tYXAtPmFkZHIgJiYgbGVuZ3RoID09IHVuaXR5X21hcC0+bGVuZ3Ro
ICYmCiAgICAgICAgICAgICAgaXIgPT0gdW5pdHlfbWFwLT5yZWFkICYmIGl3
ID09IHVuaXR5X21hcC0+d3JpdGUgKQpAQCAtMTg3LDU1ICsxODcsNTIgQEAg
c3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yXwogICAg
IHVuaXR5X21hcC0+bmV4dCA9IGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9t
YXA7CiAgICAgaXZyc19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcCA9IHVuaXR5
X21hcDsKIAorICAgIGlmICggcGFnaW5nX21vZGUgPiBhbWRfaW9tbXVfbWlu
X3BhZ2luZ19tb2RlICkKKyAgICAgICAgYW1kX2lvbW11X21pbl9wYWdpbmdf
bW9kZSA9IHBhZ2luZ19tb2RlOworCiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0
YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3Jf
YWxsX2RldmljZXMoCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25l
ZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5p
dCByZWdpc3Rlcl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCisgICAgcGFkZHJf
dCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29s
IGV4Y2x1c2lvbikKIHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCi0g
ICAgdW5zaWduZWQgbG9uZyByYW5nZV90b3AsIGlvbW11X3RvcCwgbGVuZ3Ro
OwogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwotICAgIHVuc2lnbmVk
IGludCBiZGY7CiAgICAgaW50IHJjID0gMDsKIAogICAgIC8qIGlzIHBhcnQg
b2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJT01NVSB2aXJ0dWFsIGFk
ZHJlc3Mgc3BhY2U/ICovCiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJhbWV0
ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICByYW5n
ZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsKLSAgICBpb21tdV90b3AgPSBt
YXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21tdV90
b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21tdV90
b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwotICAg
ICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwotICAgICAgICAvKiBy
ZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZp
Y2VzICovCi0gICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJlIHBh
cnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAgICBmb3IgKCBi
ZGYgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysg
KQotICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2
aWNlKHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0gICAgICAg
IC8qIHB1c2ggJ2Jhc2UnIGp1c3Qgb3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJl
c3Mgc3BhY2UgKi8KLSAgICAgICAgYmFzZSA9IGlvbW11X3RvcDsKLSAgICB9
Ci0gICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRp
bmdzICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkK
KyAgICBpZiAoIGV4Y2x1c2lvbiApCiAgICAgewogICAgICAgICBmb3JfZWFj
aF9hbWRfaW9tbXUoIGlvbW11ICkKICAgICAgICAgewotICAgICAgICAgICAg
cmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFz
ZSwgbGltaXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOwotICAgICAg
ICAgICAgaWYgKCByYyApCi0gICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICBpbnQgcmV0ID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFu
Z2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICov
KTsKKworICAgICAgICAgICAgaWYgKCByZXQgJiYgIXJjICkKKyAgICAgICAg
ICAgICAgICByYyA9IHJldDsKICAgICAgICAgfQogICAgIH0KIAorICAgIGlm
ICggIWV4Y2x1c2lvbiB8fCByYyApCisgICAgeworICAgICAgICBwYWRkcl90
IGxlbmd0aCA9IGxpbWl0ICsgUEFHRV9TSVpFIC0gYmFzZTsKKyAgICAgICAg
dW5zaWduZWQgaW50IGJkZjsKKworICAgICAgICAvKiByZXNlcnZlIHIvdyB1
bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCisgICAg
ICAgIGZvciAoIGJkZiA9IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNfYmRm
X2VudHJpZXM7IGJkZisrICkKKyAgICAgICAgICAgIHJjID0gcmVzZXJ2ZV91
bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBp
dywgaXIpOworICAgIH0KKwogICAgIHJldHVybiByYzsKIH0KIAotc3RhdGlj
IGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZp
Y2UoCi0gICAgdTE2IGJkZiwgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25l
ZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5p
dCByZWdpc3Rlcl9yYW5nZV9mb3JfZGV2aWNlKAorICAgIHVuc2lnbmVkIGlu
dCBiZGYsIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwKKyAgICBib29s
IGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikKIHsKICAgICBpbnQgc2Vn
ID0gMDsgLyogWFhYICovCiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2
cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhzZWcpOwotICAgIHVu
c2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAg
ICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAgICB1MTYgcmVxOwogICAg
IGludCByYyA9IDA7CkBAIC0yNDksMjcgKzI0NiwxOSBAQCBzdGF0aWMgaW50
IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgcmVxID0gaXZy
c19tYXBwaW5nc1tiZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7CiAKICAgICAvKiBu
b3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2Ut
YWxpZ25lZCAqLwotICAgIHJhbmdlX3RvcCA9IGxpbWl0ICsgUEFHRV9TSVpF
OwotICAgIGlvbW11X3RvcCA9IG1heF9wYWdlICogUEFHRV9TSVpFOwotICAg
IGlmICggYmFzZSA8IGlvbW11X3RvcCApCi0gICAgewotICAgICAgICBpZiAo
IHJhbmdlX3RvcCA+IGlvbW11X3RvcCApCi0gICAgICAgICAgICByYW5nZV90
b3AgPSBpb21tdV90b3A7Ci0gICAgICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAt
IGJhc2U7CisgICAgaWYgKCBleGNsdXNpb24gKQorICAgICAgICByYyA9IHJl
c2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1p
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmYWxzZSAvKiBhbGwgKi8pOworICAgIGlmICggIWV4Y2x1c2lvbiB8fCBy
YyApCisgICAgeworICAgICAgICBwYWRkcl90IGxlbmd0aCA9IGxpbWl0ICsg
UEFHRV9TSVpFIC0gYmFzZTsKKwogICAgICAgICAvKiByZXNlcnZlIHVuaXR5
LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZSAqLwotICAgICAgICAv
KiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNp
b24gcmFuZ2UgKi8KICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9m
b3JfZGV2aWNlKHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcikgPzoK
ICAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNl
ZywgcmVxLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0KLSAgICAgICAgLyog
cHVzaCAnYmFzZScganVzdCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRkcmVzcyBz
cGFjZSAqLwotICAgICAgICBiYXNlID0gaW9tbXVfdG9wOwogICAgIH0KLQot
ICAgIC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5n
cyBmb3IgZGV2aWNlICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9t
bXVfdG9wICApCisgICAgZWxzZQogICAgIHsKLSAgICAgICAgcmMgPSByZXNl
cnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwogICAgICAgICBpdnJzX21hcHBp
bmdzW2JkZl0uZHRlX2FsbG93X2V4Y2x1c2lvbiA9IHRydWU7CiAgICAgICAg
IGl2cnNfbWFwcGluZ3NbcmVxXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1
ZTsKICAgICB9CkBAIC0yNzcsNTMgKzI2Niw0MiBAQCBzdGF0aWMgaW50IF9f
aW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgcmV0dXJuIHJjOwog
fQogCi1zdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFu
Z2VfZm9yX2lvbW11X2RldmljZXMoCi0gICAgc3RydWN0IGFtZF9pb21tdSAq
aW9tbXUsCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25n
IGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5pdCByZWdp
c3Rlcl9yYW5nZV9mb3JfaW9tbXVfZGV2aWNlcygKKyAgICBzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdSwgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LAor
ICAgIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewotICAg
IHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsK
KyAgICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRv
IGJlIHBhZ2UtYWxpZ25lZCAqLworICAgIHBhZGRyX3QgbGVuZ3RoID0gbGlt
aXQgKyBQQUdFX1NJWkUgLSBiYXNlOwogICAgIHVuc2lnbmVkIGludCBiZGY7
CiAgICAgdTE2IHJlcTsKLSAgICBpbnQgcmMgPSAwOworICAgIGludCByYzsK
IAotICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBv
ZiBJT01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICovCi0gICAgLyogbm90
ZTogJ2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFs
aWduZWQgKi8KLSAgICByYW5nZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsK
LSAgICBpb21tdV90b3AgPSBtYXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBp
ZiAoIGJhc2UgPCBpb21tdV90b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCBy
YW5nZV90b3AgPiBpb21tdV90b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9w
ID0gaW9tbXVfdG9wOwotICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBi
YXNlOwotICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFn
ZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCi0gICAgICAgIC8qIG5vdGU6IHRo
ZXNlIGVudHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAq
LwotICAgICAgICBmb3IgKCBiZGYgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19i
ZGZfZW50cmllczsgYmRmKysgKQotICAgICAgICB7Ci0gICAgICAgICAgICBp
ZiAoIGlvbW11ID09IGZpbmRfaW9tbXVfZm9yX2RldmljZShpb21tdS0+c2Vn
LCBiZGYpICkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXEg
PSBnZXRfaXZyc19tYXBwaW5ncyhpb21tdS0+c2VnKVtiZGZdLmR0ZV9yZXF1
ZXN0b3JfaWQ7Ci0gICAgICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5
X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZiwgYmFzZSwgbGVuZ3Ro
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpdywgaXIpID86Ci0gICAgICAgICAgICAgICAgICAgICByZXNl
cnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFz
ZSwgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpOwotICAgICAgICAgICAgfQotICAg
ICAgICB9Ci0KLSAgICAgICAgLyogcHVzaCAnYmFzZScganVzdCBvdXRzaWRl
IG9mIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSAqLwotICAgICAgICBiYXNlID0g
aW9tbXVfdG9wOworICAgIGlmICggZXhjbHVzaW9uICkKKyAgICB7CisgICAg
ICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUs
IGJhc2UsIGxpbWl0LCB0cnVlIC8qIGFsbCAqLyk7CisgICAgICAgIGlmICgg
IXJjICkKKyAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8q
IHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwot
ICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCApCi0gICAgICAg
IHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJh
c2UsIGxpbWl0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOworICAgIC8qIHJl
c2VydmUgdW5pdHktbWFwcGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAq
LworICAgIGZvciAoIGJkZiA9IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNf
YmRmX2VudHJpZXM7IGJkZisrICkKKyAgICB7CisgICAgICAgIGlmICggaW9t
bXUgIT0gZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikg
KQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgcmVxID0gZ2V0
X2l2cnNfbWFwcGluZ3MoaW9tbXUtPnNlZylbYmRmXS5kdGVfcmVxdWVzdG9y
X2lkOworICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZp
Y2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIpID86Cisg
ICAgICAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShpb21t
dS0+c2VnLCByZXEsIGJhc2UsIGxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcik7CisgICAgfQogCiAg
ICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9p
dm1kX2RldmljZV9zZWxlY3QoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZy
c19tZW1vcnkgKml2bWRfYmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNl
LCB1bnNpZ25lZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFk
ZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBi
b29sIGV4Y2x1c2lvbikKIHsKICAgICB1MTYgYmRmOwogCkBAIC0zMzQsMTIg
KzMxMiwxMiBAQCBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2Rldmlj
ZV9zZWxlCiAgICAgICAgIHJldHVybiAtRU5PREVWOwogICAgIH0KIAotICAg
IHJldHVybiByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZShi
ZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgIHJldHVybiByZWdpc3Rl
cl9yYW5nZV9mb3JfZGV2aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpciwg
ZXhjbHVzaW9uKTsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZt
ZF9kZXZpY2VfcmFuZ2UoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19t
ZW1vcnkgKml2bWRfYmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1
bnNpZ25lZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJf
dCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29s
IGV4Y2x1c2lvbikKIHsKICAgICB1bnNpZ25lZCBpbnQgZmlyc3RfYmRmLCBs
YXN0X2JkZiwgYmRmOwogICAgIGludCBlcnJvcjsKQEAgLTM2MSwxNSArMzM5
LDE1IEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3Jh
bmcKICAgICB9CiAKICAgICBmb3IgKCBiZGYgPSBmaXJzdF9iZGYsIGVycm9y
ID0gMDsgKGJkZiA8PSBsYXN0X2JkZikgJiYgIWVycm9yOyBiZGYrKyApCi0g
ICAgICAgIGVycm9yID0gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9k
ZXZpY2UoCi0gICAgICAgICAgICBiZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIp
OworICAgICAgICBlcnJvciA9IHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2Uo
CisgICAgICAgICAgICBiZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIsIGV4Y2x1
c2lvbik7CiAKICAgICByZXR1cm4gZXJyb3I7CiB9CiAKIHN0YXRpYyBpbnQg
X19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX2lvbW11KAogICAgIGNvbnN0IHN0
cnVjdCBhY3BpX2l2cnNfbWVtb3J5ICppdm1kX2Jsb2NrLAotICAgIHVuc2ln
bmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTggaXcsIHU4
IGlyKQorICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwgYm9vbCBp
dywgYm9vbCBpciwgYm9vbCBleGNsdXNpb24pCiB7CiAgICAgaW50IHNlZyA9
IDA7IC8qIFhYWCAqLwogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwpA
QCAtMzg0LDE0ICszNjIsMTQgQEAgc3RhdGljIGludCBfX2luaXQgcGFyc2Vf
aXZtZF9kZXZpY2VfaW9tbQogICAgICAgICByZXR1cm4gLUVOT0RFVjsKICAg
ICB9CiAKLSAgICByZXR1cm4gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zv
cl9pb21tdV9kZXZpY2VzKAotICAgICAgICBpb21tdSwgYmFzZSwgbGltaXQs
IGl3LCBpcik7CisgICAgcmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21t
dV9kZXZpY2VzKAorICAgICAgICBpb21tdSwgYmFzZSwgbGltaXQsIGl3LCBp
ciwgZXhjbHVzaW9uKTsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2Vf
aXZtZF9ibG9jayhjb25zdCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZt
ZF9ibG9jaykKIHsKICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0X2FkZHIsIG1l
bV9sZW5ndGgsIGJhc2UsIGxpbWl0OwotICAgIHU4IGl3LCBpcjsKKyAgICBi
b29sIGl3ID0gdHJ1ZSwgaXIgPSB0cnVlLCBleGNsdXNpb24gPSBmYWxzZTsK
IAogICAgIGlmICggaXZtZF9ibG9jay0+aGVhZGVyLmxlbmd0aCA8IHNpemVv
ZigqaXZtZF9ibG9jaykgKQogICAgIHsKQEAgLTQwOCwxMyArMzg2LDExIEBA
IHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfYmxvY2soY29uc3QKICAg
ICAgICAgICAgICAgICAgICAgaXZtZF9ibG9jay0+aGVhZGVyLnR5cGUsIHN0
YXJ0X2FkZHIsIG1lbV9sZW5ndGgpOwogCiAgICAgaWYgKCBpdm1kX2Jsb2Nr
LT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfRVhDTFVTSU9OX1JBTkdFICkK
LSAgICAgICAgaXcgPSBpciA9IElPTU1VX0NPTlRST0xfRU5BQkxFRDsKKyAg
ICAgICAgZXhjbHVzaW9uID0gdHJ1ZTsKICAgICBlbHNlIGlmICggaXZtZF9i
bG9jay0+aGVhZGVyLmZsYWdzICYgQUNQSV9JVk1EX1VOSVRZICkKICAgICB7
Ci0gICAgICAgIGl3ID0gaXZtZF9ibG9jay0+aGVhZGVyLmZsYWdzICYgQUNQ
SV9JVk1EX1JFQUQgPwotICAgICAgICAgICAgSU9NTVVfQ09OVFJPTF9FTkFC
TEVEIDogSU9NTVVfQ09OVFJPTF9ESVNBQkxFRDsKLSAgICAgICAgaXIgPSBp
dm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEUgPwot
ICAgICAgICAgICAgSU9NTVVfQ09OVFJPTF9FTkFCTEVEIDogSU9NTVVfQ09O
VFJPTF9ESVNBQkxFRDsKKyAgICAgICAgaXcgPSBpdm1kX2Jsb2NrLT5oZWFk
ZXIuZmxhZ3MgJiBBQ1BJX0lWTURfUkVBRDsKKyAgICAgICAgaXIgPSBpdm1k
X2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEU7CiAgICAg
fQogICAgIGVsc2UKICAgICB7CkBAIC00MjUsMjAgKzQwMSwyMCBAQCBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2Jsb2NrKGNvbnN0CiAgICAgc3dp
dGNoKCBpdm1kX2Jsb2NrLT5oZWFkZXIudHlwZSApCiAgICAgewogICAgIGNh
c2UgQUNQSV9JVlJTX1RZUEVfTUVNT1JZX0FMTDoKLSAgICAgICAgcmV0dXJu
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCi0g
ICAgICAgICAgICBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0
dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygKKyAgICAgICAg
ICAgIGJhc2UsIGxpbWl0LCBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBj
YXNlIEFDUElfSVZSU19UWVBFX01FTU9SWV9PTkU6Ci0gICAgICAgIHJldHVy
biBwYXJzZV9pdm1kX2RldmljZV9zZWxlY3QoaXZtZF9ibG9jaywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1p
dCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNl
X3NlbGVjdChpdm1kX2Jsb2NrLCBiYXNlLCBsaW1pdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lv
bik7CiAKICAgICBjYXNlIEFDUElfSVZSU19UWVBFX01FTU9SWV9SQU5HRToK
LSAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3JhbmdlKGl2bWRf
YmxvY2ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNl
X2l2bWRfZGV2aWNlX3JhbmdlKGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGly
LCBleGNsdXNpb24pOwogCiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9NRU1P
UllfSU9NTVU6Ci0gICAgICAgIHJldHVybiBwYXJzZV9pdm1kX2RldmljZV9p
b21tdShpdm1kX2Jsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYmFzZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIHJl
dHVybiBwYXJzZV9pdm1kX2RldmljZV9pb21tdShpdm1kX2Jsb2NrLCBiYXNl
LCBsaW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGRlZmF1bHQ6CiAgICAg
ICAgIEFNRF9JT01NVV9ERUJVRygiSVZNRCBFcnJvcjogSW52YWxpZCBCbG9j
ayBUeXBlIVxuIik7Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9wY2lfYW1kX2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYwpAQCAtMjMxLDYgKzIzMSw4IEBAIHN0
YXRpYyBpbnQgX19tdXN0X2NoZWNrIGFsbG9jYXRlX2RvbWFpbl8KICAgICBy
ZXR1cm4gcmM7CiB9CiAKK2ludCBfX3JlYWRfbW9zdGx5IGFtZF9pb21tdV9t
aW5fcGFnaW5nX21vZGUgPSAxOworCiBzdGF0aWMgaW50IGFtZF9pb21tdV9k
b21haW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBk
b21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwpAQCAtMjQyLDExICsy
NDQsMTMgQEAgc3RhdGljIGludCBhbWRfaW9tbXVfZG9tYWluX2luaXQoc3Ry
dWN0CiAgICAgICogLSBIVk0gY291bGQgaW4gcHJpbmNpcGxlIHVzZSAzIG9y
IDQgZGVwZW5kaW5nIG9uIGhvdyBtdWNoIGd1ZXN0CiAgICAgICogICBwaHlz
aWNhbCBhZGRyZXNzIHNwYWNlIHdlIGdpdmUgaXQsIGJ1dCB0aGlzIGlzbid0
IGtub3duIHlldCBzbyB1c2UgNAogICAgICAqICAgdW5pbGF0ZXJhbGx5Lgor
ICAgICAqIC0gVW5pdHkgbWFwcyBtYXkgcmVxdWlyZSBhbiBldmVuIGhpZ2hl
ciBudW1iZXIuCiAgICAgICovCi0gICAgaGQtPmFyY2gucGFnaW5nX21vZGUg
PSBhbWRfaW9tbXVfZ2V0X3BhZ2luZ19tb2RlKAotICAgICAgICBpc19odm1f
ZG9tYWluKGQpCi0gICAgICAgID8gMXVsIDw8IChERUZBVUxUX0RPTUFJTl9B
RERSRVNTX1dJRFRIIC0gUEFHRV9TSElGVCkKLSAgICAgICAgOiBnZXRfdXBw
ZXJfbWZuX2JvdW5kKCkgKyAxKTsKKyAgICBoZC0+YXJjaC5wYWdpbmdfbW9k
ZSA9IG1heChhbWRfaW9tbXVfZ2V0X3BhZ2luZ19tb2RlKAorICAgICAgICAg
ICAgaXNfaHZtX2RvbWFpbihkKQorICAgICAgICAgICAgPyAxdWwgPDwgKERF
RkFVTFRfRE9NQUlOX0FERFJFU1NfV0lEVEggLSBQQUdFX1NISUZUKQorICAg
ICAgICAgICAgOiBnZXRfdXBwZXJfbWZuX2JvdW5kKCkgKyAxKSwKKyAgICAg
ICAgYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZSk7CiAKICAgICByZXR1cm4g
MDsKIH0K

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtODA3LDcgKzgw
Nyw3IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRl
cik7IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2Vu
dHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5V
TEwpOwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFw
Mm1faXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAg
ICAgICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3No
YXJlZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4o
bWZuX3gobWZuKSArIGksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAg
fQogICAgIH0KQEAgLTkzNSwxMyArOTM1LDEzIEBAIGd1ZXN0X3BoeXNtYXBf
YWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAg
ICAgICAgICAgIEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAg
ICB9Ci0gICAgICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNf
Zm9yZWlnbihvdCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90
KSApCiAgICAgICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRu
J3QgYmUgdW5tYXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAq
LworICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFu
dC9mb3JlaWduIHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2Ny
YXNoKGQpOwogICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAg
ICAgICAgCi0gICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAg
ICAgIHJldHVybiAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBp
ZiAoIHAybV9pc19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAg
ICAgICAgewpAQCAtMTAzNSw4ICsxMDM1LDcgQEAgaW50IHAybV9jaGFuZ2Vf
dHlwZV9vbmUoc3RydWN0IGRvbWFpbiAqZAogICAgIHN0cnVjdCBwMm1fZG9t
YWluICpwMm0gPSBwMm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgaW50IHJjOwog
Ci0gICAgQlVHX09OKHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lzX2dyYW50
KG50KSk7Ci0gICAgQlVHX09OKHAybV9pc19mb3JlaWduKG90KSB8fCBwMm1f
aXNfZm9yZWlnbihudCkpOworICAgIEJVR19PTihwMm1faXNfc3BlY2lhbChv
dCkgfHwgcDJtX2lzX3NwZWNpYWwobnQpKTsKIAogICAgIGdmbl9sb2NrKHAy
bSwgZ2ZuLCAwKTsKIApAQCAtMTI4MywxMSArMTI4MiwxMSBAQCBzdGF0aWMg
aW50IHNldF90eXBlZF9wMm1fZW50cnkoc3RydWN0IGRvCiAgICAgICAgIGdm
bl91bmxvY2socDJtLCBnZm4sIG9yZGVyKTsKICAgICAgICAgcmV0dXJuIGN1
cl9vcmRlciArIDE7CiAgICAgfQotICAgIGlmICggcDJtX2lzX2dyYW50KG90
KSB8fCBwMm1faXNfZm9yZWlnbihvdCkgKQorICAgIGlmICggcDJtX2lzX3Nw
ZWNpYWwob3QpICkKICAgICB7CiAgICAgICAgIGdmbl91bmxvY2socDJtLCBn
Zm4sIG9yZGVyKTsKICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwotICAgICAg
ICByZXR1cm4gLUVOT0VOVDsKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKICAg
ICB9CiAgICAgZWxzZSBpZiAoIHAybV9pc19yYW0ob3QpICkKICAgICB7Ci0t
LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1
ZGUvYXNtLXg4Ni9wMm0uaApAQCAtMTQxLDYgKzE0MSwxMCBAQCB0eXBlZGVm
IHVuc2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8IHAybV90b19tYXNrKHAybV9yYW1fbG9nZGlydHkpICkK
ICNkZWZpbmUgUDJNX1NIQVJFRF9UWVBFUyAgIChwMm1fdG9fbWFzayhwMm1f
cmFtX3NoYXJlZCkpCiAKKy8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQg
dXAgdmlhIHNwZWNpYWwgYWNjZXNzb3JzLiAqLworI2RlZmluZSBQMk1fU1BF
Q0lBTF9UWVBFUyAoUDJNX0dSQU5UX1RZUEVTIHwgXAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkK
KwogLyogVmFsaWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQg
d2l0aCBhICh2YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9N
Rk5fVFlQRVMgKFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhw
Mm1fbW1pb19kaXJlY3QpIFwKQEAgLTE2OSw2ICsxNzMsNyBAQCB0eXBlZGVm
IHVuc2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICNkZWZpbmUgcDJtX2lzX3Bh
Z2VkKF90KSAgICAocDJtX3RvX21hc2soX3QpICYgUDJNX1BBR0VEX1RZUEVT
KQogI2RlZmluZSBwMm1faXNfc2hhcmFibGUoX3QpIChwMm1fdG9fbWFzayhf
dCkgJiBQMk1fU0hBUkFCTEVfVFlQRVMpCiAjZGVmaW5lIHAybV9pc19zaGFy
ZWQoX3QpICAgKHAybV90b19tYXNrKF90KSAmIFAyTV9TSEFSRURfVFlQRVMp
CisjZGVmaW5lIHAybV9pc19zcGVjaWFsKF90KSAgKHAybV90b19tYXNrKF90
KSAmIFAyTV9TUEVDSUFMX1RZUEVTKQogI2RlZmluZSBwMm1faXNfYnJva2Vu
KF90KSAgIChwMm1fdG9fbWFzayhfdCkgJiBQMk1fQlJPS0VOX1RZUEVTKQog
I2RlZmluZSBwMm1faXNfZm9yZWlnbihfdCkgIChwMm1fdG9fbWFzayhfdCkg
JiBwMm1fdG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pKQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.14-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.14-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tLmMK
KysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ2NTIsNyArNDY1Miw5IEBA
IGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogCiAgICAgLyogUmVt
b3ZlIHByZXZpb3VzbHkgbWFwcGVkIHBhZ2UgaWYgaXQgd2FzIHByZXNlbnQu
ICovCiAgICAgcHJldl9tZm4gPSBnZXRfZ2ZuKGQsIGdmbl94KGdwZm4pLCAm
cDJtdCk7Ci0gICAgaWYgKCBtZm5fdmFsaWQocHJldl9tZm4pICkKKyAgICBp
ZiAoIHAybXQgPT0gcDJtX21taW9fZGlyZWN0ICkKKyAgICAgICAgcmMgPSAt
RVBFUk07CisgICAgZWxzZSBpZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQog
ICAgIHsKICAgICAgICAgaWYgKCBpc19zcGVjaWFsX3BhZ2UobWZuX3RvX3Bh
Z2UocHJldl9tZm4pKSApCiAgICAgICAgICAgICAvKiBTcGVjaWFsIHBhZ2Vz
IGFyZSBzaW1wbHkgdW5ob29rZWQgZnJvbSB0aGlzIHBoeXMgc2xvdC4gKi8K
LS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jCisrKyBiL3hlbi9hcmNoL3g4
Ni9tbS9wMm0uYwpAQCAtNzk1LDcgKzc5NSw4IEBAIHAybV9yZW1vdmVfcGFn
ZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJmN1cl9vcmRlciwgTlVMTCk7CiAK
ICAgICAgICAgaWYgKCBwMm1faXNfdmFsaWQodCkgJiYKLSAgICAgICAgICAg
ICAoIW1mbl92YWxpZChtZm4pIHx8ICFtZm5fZXEobWZuX2FkZChtZm4sIGkp
LCBtZm5fcmV0dXJuKSkgKQorICAgICAgICAgICAgICghbWZuX3ZhbGlkKG1m
bikgfHwgdCA9PSBwMm1fbW1pb19kaXJlY3QgfHwKKyAgICAgICAgICAgICAg
IW1mbl9lcShtZm5fYWRkKG1mbiwgaSksIG1mbl9yZXR1cm4pKSApCiAgICAg
ICAgICAgICByZXR1cm4gLUVJTFNFUTsKIAogICAgICAgICBpICs9ICgxVUwg
PDwgY3VyX29yZGVyKSAtCkBAIC04OTMsNyArODk0LDcgQEAgZ3Vlc3RfcGh5
c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAqZAogICAgIGlmICggcDJt
X2lzX2ZvcmVpZ24odCkgKQogICAgICAgICByZXR1cm4gLUVJTlZBTDsKIAot
ICAgIGlmICggIW1mbl92YWxpZChtZm4pICkKKyAgICBpZiAoICFtZm5fdmFs
aWQobWZuKSB8fCB0ID09IHAybV9tbWlvX2RpcmVjdCApCiAgICAgewogICAg
ICAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKICAgICAgICAgcmV0dXJuIC1F
SU5WQUw7CkBAIC05MzcsNyArOTM4LDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRf
ZW50cnkoc3RydWN0IGRvbWFpbiAqZAogICAgICAgICB9CiAgICAgICAgIGlm
ICggcDJtX2lzX3NwZWNpYWwob3QpICkKICAgICAgICAgewotICAgICAgICAg
ICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWduIHRo
aXMgd2F5LiAqLworICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFw
cGluZyBncmFudC9mb3JlaWduL2RpcmVjdC1NTUlPIHRoaXMgd2F5LiAqLwog
ICAgICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwogICAgICAgICAgICAgcDJt
X3VubG9jayhwMm0pOwogICAgICAgICAgICAgCkBAIC0xMzg3LDggKzEzODgs
OCBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShzdHJ1Y3QgZG9tYWlu
CiAgKiAgICBvcmRlcisxICBmb3IgY2FsbGVyIHRvIHJldHJ5IHdpdGggb3Jk
ZXIgKGd1YXJhbnRlZWQgc21hbGxlciB0aGFuCiAgKiAgICAgICAgICAgICB0
aGUgb3JkZXIgdmFsdWUgcGFzc2VkIGluKQogICovCi1pbnQgY2xlYXJfbW1p
b19wMm1fZW50cnkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBn
Zm5fbCwgbWZuX3QgbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGludCBvcmRlcikKK3N0YXRpYyBpbnQgY2xlYXJfbW1pb19wMm1f
ZW50cnkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBnZm5fbCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgbWZuLCB1
bnNpZ25lZCBpbnQgb3JkZXIpCiB7CiAgICAgaW50IHJjID0gLUVJTlZBTDsK
ICAgICBnZm5fdCBnZm4gPSBfZ2ZuKGdmbl9sKTsKLS0tIGEveGVuL2FyY2gv
eDg2L21tL3AybS1wb2QuYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLXBv
ZC5jCkBAIC0xMjkyLDE3ICsxMjkyLDE3IEBAIGd1ZXN0X3BoeXNtYXBfbWFy
a19wb3B1bGF0ZV9vbl9kZW1hbmQoc3QKIAogICAgICAgICBwMm0tPmdldF9l
bnRyeShwMm0sIGdmbl9hZGQoZ2ZuLCBpKSwgJm90LCAmYSwgMCwgJmN1cl9v
cmRlciwgTlVMTCk7CiAgICAgICAgIG4gPSAxVUwgPDwgbWluKG9yZGVyLCBj
dXJfb3JkZXIpOwotICAgICAgICBpZiAoIHAybV9pc19yYW0ob3QpICkKKyAg
ICAgICAgaWYgKCBvdCA9PSBwMm1fcG9wdWxhdGVfb25fZGVtYW5kICkKKyAg
ICAgICAgeworICAgICAgICAgICAgLyogQ291bnQgaG93IG1hbnkgUG9EIGVu
dHJpZXMgd2UnbGwgYmUgcmVwbGFjaW5nIGlmIHN1Y2Nlc3NmdWwgKi8KKyAg
ICAgICAgICAgIHBvZF9jb3VudCArPSBuOworICAgICAgICB9CisgICAgICAg
IGVsc2UgaWYgKCBvdCAhPSBwMm1faW52YWxpZCAmJiBvdCAhPSBwMm1fbW1p
b19kbSApCiAgICAgICAgIHsKICAgICAgICAgICAgIFAyTV9ERUJVRygiZ2Zu
X3RvX21mbiByZXR1cm5lZCB0eXBlICVkIVxuIiwgb3QpOwogICAgICAgICAg
ICAgcmMgPSAtRUJVU1k7CiAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAg
ICAgfQotICAgICAgICBlbHNlIGlmICggb3QgPT0gcDJtX3BvcHVsYXRlX29u
X2RlbWFuZCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8qIENvdW50IGhv
dyBtYW4gUG9EIGVudHJpZXMgd2UnbGwgYmUgcmVwbGFjaW5nIGlmIHN1Y2Nl
c3NmdWwgKi8KLSAgICAgICAgICAgIHBvZF9jb3VudCArPSBuOwotICAgICAg
ICB9CiAgICAgfQogCiAgICAgLyogTm93LCBhY3R1YWxseSBkbyB0aGUgdHdv
LXdheSBtYXBwaW5nICovCi0tLSBhL3hlbi9jb21tb24vbWVtb3J5LmMKKysr
IGIveGVuL2NvbW1vbi9tZW1vcnkuYwpAQCAtMzI5LDcgKzMyOSw3IEBAIGlu
dCBndWVzdF9yZW1vdmVfcGFnZShzdHJ1Y3QgZG9tYWluICpkLAogICAgIH0K
ICAgICBpZiAoIHAybXQgPT0gcDJtX21taW9fZGlyZWN0ICkKICAgICB7Ci0g
ICAgICAgIHJjID0gY2xlYXJfbW1pb19wMm1fZW50cnkoZCwgZ21mbiwgbWZu
LCBQQUdFX09SREVSXzRLKTsKKyAgICAgICAgcmMgPSAtRVBFUk07CiAgICAg
ICAgIGdvdG8gb3V0X3B1dF9nZm47CiAgICAgfQogI2Vsc2UKQEAgLTE3MjEs
NiArMTcyMSwxNSBAQCBpbnQgY2hlY2tfZ2V0X3BhZ2VfZnJvbV9nZm4oc3Ry
dWN0IGRvbWFpCiAgICAgICAgIHJldHVybiAtRUFHQUlOOwogICAgIH0KICNl
bmRpZgorI2lmZGVmIENPTkZJR19YODYKKyAgICBpZiAoIHAybXQgPT0gcDJt
X21taW9fZGlyZWN0ICkKKyAgICB7CisgICAgICAgIGlmICggcGFnZSApCisg
ICAgICAgICAgICBwdXRfcGFnZShwYWdlKTsKKworICAgICAgICByZXR1cm4g
LUVQRVJNOworICAgIH0KKyNlbmRpZgogCiAgICAgaWYgKCAhcGFnZSApCiAg
ICAgICAgIHJldHVybiAtRUlOVkFMOwotLS0gYS94ZW4vaW5jbHVkZS9hc20t
eDg2L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKQEAg
LTE0Myw3ICsxNDMsOCBAQCB0eXBlZGVmIHVuc2lnbmVkIGludCBwMm1fcXVl
cnlfdDsKIAogLyogVHlwZXMgZXN0YWJsaXNoZWQvY2xlYW5lZCB1cCB2aWEg
c3BlY2lhbCBhY2Nlc3NvcnMuICovCiAjZGVmaW5lIFAyTV9TUEVDSUFMX1RZ
UEVTIChQMk1fR1JBTlRfVFlQRVMgfCBcCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICBwMm1fdG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pKQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3Jl
aWduKSB8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV90b19t
YXNrKHAybV9tbWlvX2RpcmVjdCkpCiAKIC8qIFZhbGlkIHR5cGVzIG5vdCBu
ZWNlc3NhcmlseSBhc3NvY2lhdGVkIHdpdGggYSAodmFsaWQpIE1GTi4gKi8K
ICNkZWZpbmUgUDJNX0lOVkFMSURfTUZOX1RZUEVTIChQMk1fUE9EX1RZUEVT
ICAgICAgICAgICAgICAgICAgXApAQCAtNjQ1LDggKzY0Niw2IEBAIGludCBz
ZXRfZm9yZWlnbl9wMm1fZW50cnkoc3RydWN0IGRvbWFpbgogLyogU2V0IG1t
aW8gYWRkcmVzc2VzIGluIHRoZSBwMm0gdGFibGUgKGZvciBwYXNzLXRocm91
Z2gpICovCiBpbnQgc2V0X21taW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4g
KmQsIGdmbl90IGdmbiwgbWZuX3QgbWZuLAogICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBpbnQgb3JkZXIpOwotaW50IGNsZWFyX21taW9fcDJt
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLCBt
Zm5fdCBtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IG9yZGVyKTsKIAogLyogU2V0IGlkZW50aXR5IGFkZHJlc3NlcyBpbiB0
aGUgcDJtIHRhYmxlIChmb3IgcGFzcy10aHJvdWdoKSAqLwogaW50IHNldF9p
ZGVudGl0eV9wMm1fZW50cnkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQg
bG9uZyBnZm4sCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-1.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZ2xvYmFsIGV4Y2x1c2lvbiByYW5nZSBl
eHRlbmRpbmcKCkJlc2lkZXMgdW5pdHkgbWFwcGluZyByZWdpb25zLCB0aGUg
QU1EIElPTU1VIHNwZWMgYWxzbyBwcm92aWRlcyBmb3IKZXhjbHVzaW9uIHJh
bmdlcyAoYXJlYXMgb2YgbWVtb3J5IG5vdCB0byBiZSBzdWJqZWN0IHRvIERN
QSB0cmFuc2xhdGlvbikKdG8gYmUgc3BlY2lmaWVkIGJ5IGZpcm13YXJlIGlu
IHRoZSBBQ1BJIHRhYmxlcy4gVGhlIHNwZWMgZG9lcyBub3QgcHV0CmFueSBj
b25zdHJhaW50cyBvbiB0aGUgbnVtYmVyIG9mIHN1Y2ggcmVnaW9ucy4KCkJs
aW5kbHkgYXNzdW1pbmcgYWxsIGFkZHJlc3NlcyBiZXR3ZWVuIGFueSB0d28g
c3VjaCByYW5nZXMgc2hvdWxkIGFsc28KYmUgZXhjbHVkZWQgY2FuJ3QgYmUg
cmlnaHQuIFNpbmNlIGhhcmR3YXJlIGhhcyByb29tIGZvciBqdXN0IGEgc2lu
Z2xlCnN1Y2ggcmFuZ2UgKGNvbXByaXNlZCBvZiB0aGUgRXhjbHVzaW9uIEJh
c2UgUmVnaXN0ZXIgYW5kIHRoZSBFeGNsdXNpb24KUmFuZ2UgTGltaXQgUmVn
aXN0ZXIpLCBjb21iaW5lIG9ubHkgYWRqYWNlbnQgb3Igb3ZlcmxhcHBpbmcg
cmVnaW9ucyAoZm9yCm5vdzsgdGhpcyBtYXkgcmVxdWlyZSBmdXJ0aGVyIGFk
anVzdG1lbnQgaW4gY2FzZSB0YWJsZSBlbnRyaWVzIGFyZW4ndApzb3J0ZWQg
YnkgYWRkcmVzcykgd2l0aCBtYXRjaGluZyBleGNsdXNpb25fYWxsb3dfYWxs
IHNldHRpbmdzLiBUaGlzCnJlcXVpcmVzIGJ1YmJsaW5nIHVwIGVycm9yIGlu
ZGljYXRvcnMsIHN1Y2ggdGhhdCBJT01NVSBpbml0IGNhbiBiZQpmYWlsZWQg
d2hlbiBjb25jYXRlbmF0aW9uIHdhc24ndCBwb3NzaWJsZS4KCkZ1cnRoZXJt
b3JlLCBzaW5jZSB0aGUgZXhjbHVzaW9uIHJhbmdlIHNwZWNpZmllZCBpbiBJ
T01NVSByZWdpc3RlcnMKaW1wbGllcyBSL1cgYWNjZXNzLCByZWplY3QgcmVx
dWVzdHMgYXNraW5nIGZvciBsZXNzIHBlcm1pc3Npb25zICh0aGlzCndpbGwg
YmUgYnJvdWdodCBjbG9zZXIgdG8gdGhlIHNwZWMgYnkgYSBzdWJzZXF1ZW50
IGNoYW5nZSkuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTM3OCAvIENWRS0yMDIx
LTI4Njk1LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9hY3BpLmMKQEAgLTExNiwxMiArMTE2LDIxIEBAIHN0YXRpYyBzdHJ1
Y3QgYW1kX2lvbW11ICogX19pbml0IGZpbmRfaW8KICAgICByZXR1cm4gTlVM
TDsKIH0KIAotc3RhdGljIHZvaWQgX19pbml0IHJlc2VydmVfaW9tbXVfZXhj
bHVzaW9uX3JhbmdlKAotICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1
aW50NjRfdCBiYXNlLCB1aW50NjRfdCBsaW1pdCkKK3N0YXRpYyBpbnQgX19p
bml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKAorICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBs
aW1pdCwKKyAgICBib29sIGFsbCwgYm9vbCBpdywgYm9vbCBpcikKIHsKKyAg
ICBpZiAoICFpciB8fCAhaXcgKQorICAgICAgICByZXR1cm4gLUVQRVJNOwor
CiAgICAgLyogbmVlZCB0byBleHRlbmQgZXhjbHVzaW9uIHJhbmdlPyAqLwog
ICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9lbmFibGUgKQogICAgIHsKKyAg
ICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9uX2xpbWl0ICsgUEFHRV9TSVpF
IDwgYmFzZSB8fAorICAgICAgICAgICAgIGxpbWl0ICsgUEFHRV9TSVpFIDwg
aW9tbXUtPmV4Y2x1c2lvbl9iYXNlIHx8CisgICAgICAgICAgICAgaW9tbXUt
PmV4Y2x1c2lvbl9hbGxvd19hbGwgIT0gYWxsICkKKyAgICAgICAgICAgIHJl
dHVybiAtRUJVU1k7CisKICAgICAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9u
X2Jhc2UgPCBiYXNlICkKICAgICAgICAgICAgIGJhc2UgPSBpb21tdS0+ZXhj
bHVzaW9uX2Jhc2U7CiAgICAgICAgIGlmICggaW9tbXUtPmV4Y2x1c2lvbl9s
aW1pdCA+IGxpbWl0ICkKQEAgLTEyOSwxNiArMTM4LDExIEBAIHN0YXRpYyB2
b2lkIF9faW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2kKICAgICB9CiAKICAg
ICBpb21tdS0+ZXhjbHVzaW9uX2VuYWJsZSA9IElPTU1VX0NPTlRST0xfRU5B
QkxFRDsKKyAgICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IGFsbDsK
ICAgICBpb21tdS0+ZXhjbHVzaW9uX2Jhc2UgPSBiYXNlOwogICAgIGlvbW11
LT5leGNsdXNpb25fbGltaXQgPSBsaW1pdDsKLX0KIAotc3RhdGljIHZvaWQg
X19pbml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlX2FsbCgKLSAg
ICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25lZCBsb25n
IGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQpCi17Ci0gICAgcmVzZXJ2ZV9p
b21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0KTsKLSAg
ICBpb21tdS0+ZXhjbHVzaW9uX2FsbG93X2FsbCA9IElPTU1VX0NPTlRST0xf
RU5BQkxFRDsKKyAgICByZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgX19p
bml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoCkBAIC0xNzYsNiAr
MTgwLDcgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbgogICAgIHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3As
IGxlbmd0aDsKICAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAgICB1
bnNpZ25lZCBpbnQgYmRmOworICAgIGludCByYyA9IDA7CiAKICAgICAvKiBp
cyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5nZSBpbnNpZGUgb2YgSU9NTVUgdmly
dHVhbCBhZGRyZXNzIHNwYWNlPyAqLwogICAgIC8qIG5vdGU6ICdsaW1pdCcg
cGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCkBA
IC0xOTcsMTAgKzIwMiwxNSBAQCBzdGF0aWMgaW50IF9faW5pdCByZWdpc3Rl
cl9leGNsdXNpb25fcmFuCiAgICAgaWYgKCBsaW1pdCA+PSBpb21tdV90b3Ag
KQogICAgIHsKICAgICAgICAgZm9yX2VhY2hfYW1kX2lvbW11KCBpb21tdSAp
Ci0gICAgICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZV9h
bGwoaW9tbXUsIGJhc2UsIGxpbWl0KTsKKyAgICAgICAgeworICAgICAgICAg
ICAgcmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwg
YmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOworICAg
ICAgICAgICAgaWYgKCByYyApCisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
cmM7CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW5nZV9mb3JfZGV2aWNlKApAQCAtMjExLDYgKzIyMSw3IEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICB1bnNp
Z25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgdTE2IHJlcTsKKyAgICBp
bnQgcmMgPSAwOwogCiAgICAgaW9tbXUgPSBmaW5kX2lvbW11X2Zvcl9kZXZp
Y2Uoc2VnLCBiZGYpOwogICAgIGlmICggIWlvbW11ICkKQEAgLTI0MCwxMiAr
MjUxLDEzIEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lv
bl9yYW4KICAgICAvKiByZWdpc3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ug
c2V0dGluZ3MgZm9yIGRldmljZSAqLwogICAgIGlmICggbGltaXQgPj0gaW9t
bXVfdG9wICApCiAgICAgewotICAgICAgICByZXNlcnZlX2lvbW11X2V4Y2x1
c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQpOworICAgICAgICByYyA9
IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBs
aW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmYWxzZSAvKiBhbGwgKi8sIGl3LCBpcik7CiAgICAgICAgIGl2cnNf
bWFwcGluZ3NbYmRmXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1ZTsKICAg
ICAgICAgaXZyc19tYXBwaW5nc1tyZXFdLmR0ZV9hbGxvd19leGNsdXNpb24g
PSB0cnVlOwogICAgIH0KIAotICAgIHJldHVybiAwOworICAgIHJldHVybiBy
YzsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbmdlX2Zvcl9pb21tdV9kZXZpY2VzKApAQCAtMjU1LDYgKzI2Nyw3IEBA
IHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAg
ICB1bnNpZ25lZCBsb25nIHJhbmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7
CiAgICAgdW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOworICAgIGlu
dCByYyA9IDA7CiAKICAgICAvKiBpcyBwYXJ0IG9mIGV4Y2x1c2lvbiByYW5n
ZSBpbnNpZGUgb2YgSU9NTVUgdmlydHVhbCBhZGRyZXNzIHNwYWNlPyAqLwog
ICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8g
YmUgcGFnZS1hbGlnbmVkICovCkBAIC0yODUsOCArMjk4LDEwIEBAIHN0YXRp
YyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KIAogICAgIC8q
IHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwog
ICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkKLSAgICAgICAgcmVzZXJ2
ZV9pb21tdV9leGNsdXNpb25fcmFuZ2VfYWxsKGlvbW11LCBiYXNlLCBsaW1p
dCk7Ci0gICAgcmV0dXJuIDA7CisgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21t
dV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgLyog
YWxsICovLCBpdywgaXIpOworCisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9zZWxlY3QoCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-2.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IGNvcnJlY3QgZGV2aWNlIHVuaXR5IG1hcCBoYW5kbGlu
ZwoKQmxpbmRseSBhc3N1bWluZyBhbGwgYWRkcmVzc2VzIGJldHdlZW4gYW55
IHR3byBzdWNoIHJhbmdlcywgc3BlY2lmaWVkIGJ5CmZpcm13YXJlIGluIHRo
ZSBBQ1BJIHRhYmxlcywgc2hvdWxkIGFsc28gYmUgdW5pdHktbWFwcGVkIGNh
bid0IGJlIHJpZ2h0LgpOb3IgY2FuIGl0IGJlIGNvcnJlY3QgdG8gbWVyZ2Ug
cmFuZ2VzIHdpdGggZGlmZmVyaW5nIHBlcm1pc3Npb25zLiBUcmFjawpyYW5n
ZXMgaW5kaXZpZHVhbGx5OyBkb24ndCBtZXJnZSBhdCBhbGwsIGJ1dCBjaGVj
ayBmb3Igb3ZlcmxhcHMgaW5zdGVhZC4KVGhpcyByZXF1aXJlcyBidWJibGlu
ZyB1cCBlcnJvciBpbmRpY2F0b3JzLCBzdWNoIHRoYXQgSU9NTVUgaW5pdCBj
YW4gYmUKZmFpbGVkIHdoZW4gYWxsb2NhdGlvbiBvZiBhIG5ldyB0cmFja2lu
ZyBzdHJ1Y3Qgd2Fzbid0IHBvc3NpYmxlLCBvciBhbgpvdmVybGFwIHdhcyBk
ZXRlY3RlZC4KCkF0IHRoaXMgb2NjYXNpb24gYWxzbyBzdG9wIGlnbm9yaW5n
CmFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoKSdzIHJldHVy
biB2YWx1ZS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4IC8gQ1ZFLTIwMjEt
Mjg2OTUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu
ZHVubGFwQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQg
PHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L2FtZC9pb21tdS5oCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9pb21tdS5oCkBAIC0xMDcsMjAgKzEwNywyNCBAQCBzdHJ1Y3QgYW1kX2lv
bW11IHsKICAgICBzdHJ1Y3QgbGlzdF9oZWFkIGF0c19kZXZpY2VzOwogfTsK
IAorc3RydWN0IGl2cnNfdW5pdHlfbWFwIHsKKyAgICBib29sIHJlYWQ6MTsK
KyAgICBib29sIHdyaXRlOjE7CisgICAgcGFkZHJfdCBhZGRyOworICAgIHVu
c2lnbmVkIGxvbmcgbGVuZ3RoOworICAgIHN0cnVjdCBpdnJzX3VuaXR5X21h
cCAqbmV4dDsKK307CisKIHN0cnVjdCBpdnJzX21hcHBpbmdzIHsKICAgICB1
aW50MTZfdCBkdGVfcmVxdWVzdG9yX2lkOwogICAgIGJvb2wgdmFsaWQ6MTsK
ICAgICBib29sIGR0ZV9hbGxvd19leGNsdXNpb246MTsKLSAgICBib29sIHVu
aXR5X21hcF9lbmFibGU6MTsKLSAgICBib29sIHdyaXRlX3Blcm1pc3Npb246
MTsKLSAgICBib29sIHJlYWRfcGVybWlzc2lvbjoxOwogCiAgICAgLyogaXZo
ZCBkZXZpY2UgZGF0YSBzZXR0aW5ncyAqLwogICAgIHVpbnQ4X3QgZGV2aWNl
X2ZsYWdzOwogCi0gICAgdW5zaWduZWQgbG9uZyBhZGRyX3JhbmdlX3N0YXJ0
OwotICAgIHVuc2lnbmVkIGxvbmcgYWRkcl9yYW5nZV9sZW5ndGg7CiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CisgICAgc3RydWN0IGl2cnNfdW5p
dHlfbWFwICp1bml0eV9tYXA7CiAKICAgICAvKiBwZXIgZGV2aWNlIGludGVy
cnVwdCByZW1hcHBpbmcgdGFibGUgKi8KICAgICB2b2lkICppbnRyZW1hcF90
YWJsZTsKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2FjcGkuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfYWNwaS5jCkBAIC0xNDUsMzIgKzE0NSw0OCBAQCBzdGF0aWMgaW50IF9f
aW5pdCByZXNlcnZlX2lvbW11X2V4Y2x1c2lvCiAgICAgcmV0dXJuIDA7CiB9
CiAKLXN0YXRpYyB2b2lkIF9faW5pdCByZXNlcnZlX3VuaXR5X21hcF9mb3Jf
ZGV2aWNlKAotICAgIHUxNiBzZWcsIHUxNiBiZGYsIHVuc2lnbmVkIGxvbmcg
YmFzZSwKLSAgICB1bnNpZ25lZCBsb25nIGxlbmd0aCwgdTggaXcsIHU4IGly
KQorc3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2Rl
dmljZSgKKyAgICB1aW50MTZfdCBzZWcsIHVpbnQxNl90IGJkZiwgdW5zaWdu
ZWQgbG9uZyBiYXNlLAorICAgIHVuc2lnbmVkIGxvbmcgbGVuZ3RoLCBib29s
IGl3LCBib29sIGlyKQogewogICAgIHN0cnVjdCBpdnJzX21hcHBpbmdzICpp
dnJzX21hcHBpbmdzID0gZ2V0X2l2cnNfbWFwcGluZ3Moc2VnKTsKLSAgICB1
bnNpZ25lZCBsb25nIG9sZF90b3AsIG5ld190b3A7CisgICAgc3RydWN0IGl2
cnNfdW5pdHlfbWFwICp1bml0eV9tYXAgPSBpdnJzX21hcHBpbmdzW2JkZl0u
dW5pdHlfbWFwOwogCi0gICAgLyogbmVlZCB0byBleHRlbmQgdW5pdHktbWFw
cGVkIHJhbmdlPyAqLwotICAgIGlmICggaXZyc19tYXBwaW5nc1tiZGZdLnVu
aXR5X21hcF9lbmFibGUgKQorICAgIC8qIENoZWNrIGZvciBvdmVybGFwcy4g
Ki8KKyAgICBmb3IgKCA7IHVuaXR5X21hcDsgdW5pdHlfbWFwID0gdW5pdHlf
bWFwLT5uZXh0ICkKICAgICB7Ci0gICAgICAgIG9sZF90b3AgPSBpdnJzX21h
cHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9zdGFydCArCi0gICAgICAgICAgICBp
dnJzX21hcHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9sZW5ndGg7Ci0gICAgICAg
IG5ld190b3AgPSBiYXNlICsgbGVuZ3RoOwotICAgICAgICBpZiAoIG9sZF90
b3AgPiBuZXdfdG9wICkKLSAgICAgICAgICAgIG5ld190b3AgPSBvbGRfdG9w
OwotICAgICAgICBpZiAoIGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3Jhbmdl
X3N0YXJ0IDwgYmFzZSApCi0gICAgICAgICAgICBiYXNlID0gaXZyc19tYXBw
aW5nc1tiZGZdLmFkZHJfcmFuZ2Vfc3RhcnQ7Ci0gICAgICAgIGxlbmd0aCA9
IG5ld190b3AgLSBiYXNlOwotICAgIH0KLQotICAgIC8qIGV4dGVuZCByL3cg
cGVybWlzc2lvbXMgYW5kIGtlZXAgYWdncmVnYXRlICovCi0gICAgaXZyc19t
YXBwaW5nc1tiZGZdLndyaXRlX3Blcm1pc3Npb24gPSBpdzsKLSAgICBpdnJz
X21hcHBpbmdzW2JkZl0ucmVhZF9wZXJtaXNzaW9uID0gaXI7Ci0gICAgaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcF9lbmFibGUgPSB0cnVlOwotICAg
IGl2cnNfbWFwcGluZ3NbYmRmXS5hZGRyX3JhbmdlX3N0YXJ0ID0gYmFzZTsK
LSAgICBpdnJzX21hcHBpbmdzW2JkZl0uYWRkcl9yYW5nZV9sZW5ndGggPSBs
ZW5ndGg7CisgICAgICAgIC8qCisgICAgICAgICAqIEV4YWN0IG1hdGNoZXMg
YXJlIG9rYXkuIFRoaXMgY2FuIGluIHBhcnRpY3VsYXIgaGFwcGVuIHdoZW4K
KyAgICAgICAgICogcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZp
Y2UoKSBjYWxscyBoZXJlIHR3aWNlIGZvciB0aGUKKyAgICAgICAgICogc2Ft
ZSAocyxiLGQsZikuCisgICAgICAgICAqLworICAgICAgICBpZiAoIGJhc2Ug
PT0gdW5pdHlfbWFwLT5hZGRyICYmIGxlbmd0aCA9PSB1bml0eV9tYXAtPmxl
bmd0aCAmJgorICAgICAgICAgICAgIGlyID09IHVuaXR5X21hcC0+cmVhZCAm
JiBpdyA9PSB1bml0eV9tYXAtPndyaXRlICkKKyAgICAgICAgICAgIHJldHVy
biAwOworCisgICAgICAgIGlmICggdW5pdHlfbWFwLT5hZGRyICsgdW5pdHlf
bWFwLT5sZW5ndGggPiBiYXNlICYmCisgICAgICAgICAgICAgYmFzZSArIGxl
bmd0aCA+IHVuaXR5X21hcC0+YWRkciApCisgICAgICAgIHsKKyAgICAgICAg
ICAgIEFNRF9JT01NVV9ERUJVRygiSVZNRCBFcnJvcjogb3ZlcmxhcCBbJWx4
LCVseCkgdnMgWyVseCwlbHgpXG4iLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJhc2UsIGJhc2UgKyBsZW5ndGgsIHVuaXR5X21hcC0+YWRkciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPmFkZHIg
KyB1bml0eV9tYXAtPmxlbmd0aCk7CisgICAgICAgICAgICByZXR1cm4gLUVQ
RVJNOworICAgICAgICB9CisgICAgfQorCisgICAgLyogUG9wdWxhdGUgYW5k
IGluc2VydCBhIG5ldyB1bml0eSBtYXAuICovCisgICAgdW5pdHlfbWFwID0g
eG1hbGxvYyhzdHJ1Y3QgaXZyc191bml0eV9tYXApOworICAgIGlmICggIXVu
aXR5X21hcCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworCisgICAgdW5p
dHlfbWFwLT5yZWFkID0gaXI7CisgICAgdW5pdHlfbWFwLT53cml0ZSA9IGl3
OworICAgIHVuaXR5X21hcC0+YWRkciA9IGJhc2U7CisgICAgdW5pdHlfbWFw
LT5sZW5ndGggPSBsZW5ndGg7CisgICAgdW5pdHlfbWFwLT5uZXh0ID0gaXZy
c19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcDsKKyAgICBpdnJzX21hcHBpbmdz
W2JkZl0udW5pdHlfbWFwID0gdW5pdHlfbWFwOworCisgICAgcmV0dXJuIDA7
CiB9CiAKIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9y
YW5nZV9mb3JfYWxsX2RldmljZXMoCkBAIC0xOTMsMTMgKzIwOSwxMyBAQCBz
dGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAg
ICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAtIGJhc2U7CiAgICAgICAgIC8qIHJl
c2VydmUgci93IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmlj
ZXMgKi8KICAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFy
dCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJk
ZiA9IDA7IGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKLSAgICAg
ICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYs
IGJhc2UsIGxlbmd0aCwgaXcsIGlyKTsKKyAgICAgICAgZm9yICggYmRmID0g
MDsgIXJjICYmIGJkZiA8IGl2cnNfYmRmX2VudHJpZXM7IGJkZisrICkKKyAg
ICAgICAgICAgIHJjID0gcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShz
ZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOwogICAgICAgICAvKiBw
dXNoICdiYXNlJyBqdXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNw
YWNlICovCiAgICAgICAgIGJhc2UgPSBpb21tdV90b3A7CiAgICAgfQogICAg
IC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAq
LwotICAgIGlmICggbGltaXQgPj0gaW9tbXVfdG9wICkKKyAgICBpZiAoICFy
YyAmJiBsaW1pdCA+PSBpb21tdV90b3AgKQogICAgIHsKICAgICAgICAgZm9y
X2VhY2hfYW1kX2lvbW11KCBpb21tdSApCiAgICAgICAgIHsKQEAgLTI0MSwx
NSArMjU3LDE1IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1
c2lvbl9yYW4KICAgICAgICAgbGVuZ3RoID0gcmFuZ2VfdG9wIC0gYmFzZTsK
ICAgICAgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVz
IGZvciBkZXZpY2UgKi8KICAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmll
cyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2Us
IGxlbmd0aCwgaXcsIGlyKTsKLSAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBf
Zm9yX2RldmljZShzZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLCBpdywgaXIpOwor
ICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2Vn
LCBiZGYsIGJhc2UsIGxlbmd0aCwgaXcsIGlyKSA/OgorICAgICAgICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2Us
IGxlbmd0aCwgaXcsIGlyKTsKIAogICAgICAgICAvKiBwdXNoICdiYXNlJyBq
dXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCiAgICAg
ICAgIGJhc2UgPSBpb21tdV90b3A7CiAgICAgfQogCiAgICAgLyogcmVnaXN0
ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzIGZvciBkZXZpY2Ug
Ki8KLSAgICBpZiAoIGxpbWl0ID49IGlvbW11X3RvcCAgKQorICAgIGlmICgg
IXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCAgKQogICAgIHsKICAgICAgICAg
cmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFz
ZSwgbGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwpAQCAtMjgwLDE1
ICsyOTYsMTUgQEAgc3RhdGljIGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVz
aW9uX3JhbgogICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwog
ICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRy
aWVzIGZvciBkZXZpY2VzICovCiAgICAgICAgIC8qIG5vdGU6IHRoZXNlIGVu
dHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAg
ICAgICBmb3IgKCBiZGYgPSAwOyBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBi
ZGYrKyApCisgICAgICAgIGZvciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYgPCBp
dnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCiAgICAgICAgIHsKICAgICAgICAg
ICAgIGlmICggaW9tbXUgPT0gZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11
LT5zZWcsIGJkZikgKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAg
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRm
LCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpOwogICAgICAgICAgICAgICAgIHJl
cSA9IGdldF9pdnJzX21hcHBpbmdzKGlvbW11LT5zZWcpW2JkZl0uZHRlX3Jl
cXVlc3Rvcl9pZDsKLSAgICAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21h
cF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwgbGVuZ3RoLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aXcsIGlyKTsKKyAgICAgICAgICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlf
bWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGl3LCBpcikgPzoKKyAgICAgICAgICAgICAgICAgICAgIHJlc2Vy
dmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9tbXUtPnNlZywgcmVxLCBiYXNl
LCBsZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGl3LCBpcik7CiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0KIApAQCAtMjk3LDcgKzMxMyw3IEBAIHN0YXRpYyBpbnQgX19pbml0
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW4KICAgICB9CiAKICAgICAvKiByZWdp
c3RlciBJT01NVSBleGNsdXNpb24gcmFuZ2Ugc2V0dGluZ3MgKi8KLSAgICBp
ZiAoIGxpbWl0ID49IGlvbW11X3RvcCApCisgICAgaWYgKCAhcmMgJiYgbGlt
aXQgPj0gaW9tbXVfdG9wICkKICAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBh
bGwgKi8sIGl3LCBpcik7CiAKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNz
dGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBAIC0zNjcsMTUgKzM2Nywx
NyBAQCBzdGF0aWMgaW50IGFtZF9pb21tdV9hc3NpZ25fZGV2aWNlKHN0cnVj
CiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwogICAgIGludCBiZGYgPSBQ
Q0lfQkRGMihwZGV2LT5idXMsIGRldmZuKTsKICAgICBpbnQgcmVxX2lkID0g
Z2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYpOworICAgIGNv
bnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFwOwogCi0gICAg
aWYgKCBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFwX2VuYWJsZSAp
CisgICAgZm9yICggdW5pdHlfbWFwID0gaXZyc19tYXBwaW5nc1tyZXFfaWRd
LnVuaXR5X21hcDsgdW5pdHlfbWFwOworICAgICAgICAgIHVuaXR5X21hcCA9
IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewotICAgICAgICBhbWRfaW9tbXVf
cmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKAotICAgICAgICAgICAgZCwKLSAg
ICAgICAgICAgIGl2cnNfbWFwcGluZ3NbcmVxX2lkXS5hZGRyX3JhbmdlX3N0
YXJ0LAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFfaWRdLmFkZHJf
cmFuZ2VfbGVuZ3RoLAotICAgICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFf
aWRdLndyaXRlX3Blcm1pc3Npb24sCi0gICAgICAgICAgICBpdnJzX21hcHBp
bmdzW3JlcV9pZF0ucmVhZF9wZXJtaXNzaW9uKTsKKyAgICAgICAgaW50IHJj
ID0gYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKKyAgICAg
ICAgICAgICAgICAgICAgIGQsIHVuaXR5X21hcC0+YWRkciwgdW5pdHlfbWFw
LT5sZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPndy
aXRlLCB1bml0eV9tYXAtPnJlYWQpOworCisgICAgICAgIGlmICggcmMgKQor
ICAgICAgICAgICAgcmV0dXJuIHJjOwogICAgIH0KIAogICAgIHJldHVybiBy
ZWFzc2lnbl9kZXZpY2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwgcGRldik7
Cg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-3.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-3.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogYWxzbyBwYXNzIHAybV9hY2Nlc3NfdCB0byBwMm1fZ2V0X2lv
bW11X2ZsYWdzKCkKCkEgc3Vic2VxdWVudCBjaGFuZ2Ugd2lsbCB3YW50IHRv
IGN1c3RvbWl6ZSB0aGUgSU9NTVUgcGVybWlzc2lvbnMgYmFzZWQKb24gdGhp
cy4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0
LmMKQEAgLTY4MSw3ICs2ODEsNyBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBw
Mm1fZG9tYWluICpwMm0sIGdmCiAgICAgdWludDhfdCBpcGF0ID0gMDsKICAg
ICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsKICAgICBib29s
X3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsKLSAgICB1bnNpZ25lZCBpbnQgaW9t
bXVfZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7Cisg
ICAgdW5zaWduZWQgaW50IGlvbW11X2ZsYWdzID0gcDJtX2dldF9pb21tdV9m
bGFncyhwMm10LCBwMm1hLCBtZm4pOwogICAgIGJvb2xfdCBuZWVkc19zeW5j
ID0gMTsKICAgICBlcHRfZW50cnlfdCBvbGRfZW50cnkgPSB7IC5lcHRlID0g
MCB9OwogICAgIGVwdF9lbnRyeV90IG5ld19lbnRyeSA9IHsgLmVwdGUgPSAw
IH07CkBAIC04MDksOCArODA5LDggQEAgZXB0X3NldF9lbnRyeShzdHJ1Y3Qg
cDJtX2RvbWFpbiAqcDJtLCBnZgogCiAgICAgICAgIC8qIFNhZmUgdG8gcmVh
ZC10aGVuLXdyaXRlIGJlY2F1c2Ugd2UgaG9sZCB0aGUgcDJtIGxvY2sgKi8K
ICAgICAgICAgaWYgKCBlcHRfZW50cnktPm1mbiA9PSBuZXdfZW50cnkubWZu
ICYmCi0gICAgICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhlcHRfZW50
cnktPnNhX3AybXQsIF9tZm4oZXB0X2VudHJ5LT5tZm4pKSA9PQotICAgICAg
ICAgICAgIGlvbW11X2ZsYWdzICkKKyAgICAgICAgICAgICBwMm1fZ2V0X2lv
bW11X2ZsYWdzKGVwdF9lbnRyeS0+c2FfcDJtdCwgZXB0X2VudHJ5LT5hY2Nl
c3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKGVw
dF9lbnRyeS0+bWZuKSkgPT0gaW9tbXVfZmxhZ3MgKQogICAgICAgICAgICAg
bmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMDsKIAogICAgICAgICBlcHRfcDJt
X3R5cGVfdG9fZmxhZ3MocDJtLCAmbmV3X2VudHJ5KTsKLS0tIGEveGVuL2Fy
Y2gveDg2L21tL3AybS1wdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0t
cHQuYwpAQCAtNTQ1LDYgKzU0NSwxNiBAQCBpbnQgcDJtX3B0X2hhbmRsZV9k
ZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2CiAgICAgcmV0dXJuIHJjOwogfQogCisv
KiBSZWNvbnN0cnVjdCBhIGZha2UgcDJtX2FjY2Vzc190IGZyb20gc3RvcmVk
IFBURSBmbGFncy4gKi8KK3N0YXRpYyBwMm1fYWNjZXNzX3QgcDJtX2ZsYWdz
X3RvX2FjY2Vzcyh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7CisgICAgaWYgKCBm
bGFncyAmIF9QQUdFX1BSRVNFTlQgKQorICAgICAgICByZXR1cm4gcDJtX2Fj
Y2Vzc19uOworCisgICAgLyogTm8gbmVlZCB0byBsb29rIGF0IF9QQUdFX05Y
IGZvciBub3cuICovCisgICAgcmV0dXJuIGZsYWdzICYgX1BBR0VfUlcgPyBw
Mm1fYWNjZXNzX3J3IDogcDJtX2FjY2Vzc19yOworfQorCiAvKiBDaGVja3Mg
b25seSBhcHBsaWNhYmxlIHRvIGVudHJpZXMgd2l0aCBvcmRlciA+IFBBR0Vf
T1JERVJfNEsgKi8KIHN0YXRpYyB2b2lkIGNoZWNrX2VudHJ5KG1mbl90IG1m
biwgcDJtX3R5cGVfdCBuZXcsIHAybV90eXBlX3Qgb2xkLAogICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVyKQpAQCAtNTc5LDcg
KzU4OSw3IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4g
KnAybSwKICAgICBsMl9wZ2VudHJ5X3QgbDJlX2NvbnRlbnQ7CiAgICAgbDNf
cGdlbnRyeV90IGwzZV9jb250ZW50OwogICAgIGludCByYzsKLSAgICB1bnNp
Z25lZCBpbnQgaW9tbXVfcHRlX2ZsYWdzID0gcDJtX2dldF9pb21tdV9mbGFn
cyhwMm10LCBtZm4pOworICAgIHVuc2lnbmVkIGludCBpb21tdV9wdGVfZmxh
Z3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIHAybWEsIG1mbik7CiAg
ICAgLyoKICAgICAgKiBvbGRfbWZuIGFuZCBpb21tdV9vbGRfZmxhZ3MgY29u
dHJvbCBwb3NzaWJsZSBmbHVzaC91cGRhdGUgbmVlZHMgb24gdGhlCiAgICAg
ICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBNRk4gb3IgZmxhZ3Mg
KGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4KQEAgLTY0Miw2ICs2NTIsNyBA
QCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAg
ICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRfcGZuKCpwMm1fZW50
cnkpOwogICAgICAgICAgICAgICAgIGlvbW11X29sZF9mbGFncyA9CiAgICAg
ICAgICAgICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxhZ3MocDJtX2ZsYWdz
X3RvX3R5cGUoZmxhZ3MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHAybV9mbGFnc190b19hY2Nlc3MoZmxhZ3MpLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4ob2xk
X21mbikpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQpAQCAt
Njg0LDkgKzY5NSwxMCBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1f
ZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDAsIEwxX1BBR0VUQUJMRV9FTlRSSUVTKTsKICAgICAgICAgQVNTRVJU
KHAybV9lbnRyeSk7CiAgICAgICAgIG9sZF9tZm4gPSBsMWVfZ2V0X3Bmbigq
cDJtX2VudHJ5KTsKKyAgICAgICAgZmxhZ3MgPSBsMWVfZ2V0X2ZsYWdzKCpw
Mm1fZW50cnkpOwogICAgICAgICBpb21tdV9vbGRfZmxhZ3MgPQotICAgICAg
ICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlwZShs
MWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7CisgICAgICAgICAgICBw
Mm1fZ2V0X2lvbW11X2ZsYWdzKHAybV9mbGFnc190b190eXBlKGZsYWdzKSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3Rv
X2FjY2VzcyhmbGFncyksIF9tZm4ob2xkX21mbikpOwogCiAgICAgICAgIGlm
ICggbWZuX3ZhbGlkKG1mbikgfHwgcDJtX2FsbG93c19pbnZhbGlkX21mbihw
Mm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50ID0gcDJtX2wxZV9m
cm9tX3BmbihtZm5feChtZm4pLApAQCAtNzE0LDYgKzcyNiw3IEBAIHAybV9w
dF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwKICAgICAgICAg
ICAgICAgICBvbGRfbWZuID0gbDFlX2dldF9wZm4oKnAybV9lbnRyeSk7CiAg
ICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0KICAgICAgICAgICAg
ICAgICAgICAgcDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlw
ZShmbGFncyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcDJtX2ZsYWdzX3RvX2FjY2VzcyhmbGFncyksCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX21mbihvbGRfbWZuKSk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0tLSBhL3hlbi9p
bmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4
Ni9wMm0uaApAQCAtOTE1LDcgKzkxNSw4IEBAIHN0YXRpYyBpbmxpbmUgdm9p
ZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnUKIC8qCiAgKiBwMm0gdHlwZSB0byBJ
T01NVSBmbGFncwogICovCi1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBw
Mm1fZ2V0X2lvbW11X2ZsYWdzKHAybV90eXBlX3QgcDJtdCwgbWZuX3QgbWZu
KQorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2dldF9pb21tdV9m
bGFncyhwMm1fdHlwZV90IHAybXQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHAybV9hY2Nlc3NfdCBwMm1hLCBt
Zm5fdCBtZm4pCiB7CiAgICAgdW5zaWduZWQgaW50IGZsYWdzOwogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+CgotLS0gYS94ZW4vYXJjaC94
ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS5jCkBAIC0x
MzY1LDcgKzEzNjUsNyBAQCBpbnQgc2V0X2lkZW50aXR5X3AybV9lbnRyeShz
dHJ1Y3QgZG9tYWluCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAg
cmV0dXJuIGlvbW11X2xlZ2FjeV9tYXAoZCwgX2RmbihnZm5fbCksIF9tZm4o
Z2ZuX2wpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxdWwg
PDwgUEFHRV9PUkRFUl80SywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgSU9NTVVGX3JlYWRhYmxlIHwgSU9NTVVGX3dyaXRhYmxlKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2FjY2Vzc190b19p
b21tdV9mbGFncyhwMm1hKSk7CiAgICAgfQogCiAgICAgZ2ZuX2xvY2socDJt
LCBnZm4sIDApOwotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQv
aW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9t
bXUuYwpAQCAtNDIsMTIgKzQyLDYgQEAKICNpbmNsdWRlICJ2dGQuaCIKICNp
bmNsdWRlICIuLi9hdHMuaCIKIAotc3RydWN0IG1hcHBlZF9ybXJyIHsKLSAg
ICBzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7Ci0gICAgdTY0IGJhc2UsIGVuZDsK
LSAgICB1bnNpZ25lZCBpbnQgY291bnQ7Ci19OwotCiAvKiBQb3NzaWJsZSB1
bmZpbHRlcmVkIExBUElDL01TSSBtZXNzYWdlcyBmcm9tIHVudHJ1c3RlZCBz
b3VyY2VzPyAqLwogYm9vbCBfX3JlYWRfbW9zdGx5IHVudHJ1c3RlZF9tc2k7
CiAKQEAgLTEzMTEsNyArMTMwNSw2IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9t
bXVfZG9tYWluX2luaXQoc3RydWMKICAgICBzdHJ1Y3QgZG9tYWluX2lvbW11
ICpoZCA9IGRvbV9pb21tdShkKTsKIAogICAgIGhkLT5hcmNoLnZ0ZC5hZ2F3
ID0gd2lkdGhfdG9fYWdhdyhERUZBVUxUX0RPTUFJTl9BRERSRVNTX1dJRFRI
KTsKLSAgICBJTklUX0xJU1RfSEVBRCgmaGQtPmFyY2gudnRkLm1hcHBlZF9y
bXJycyk7CiAKICAgICByZXR1cm4gMDsKIH0KQEAgLTE3ODgsMTcgKzE3ODEs
MTIgQEAgc3RhdGljIHZvaWQgaW9tbXVfY2xlYXJfcm9vdF9wZ3RhYmxlKHN0
cgogc3RhdGljIHZvaWQgaW9tbXVfZG9tYWluX3RlYXJkb3duKHN0cnVjdCBk
b21haW4gKmQpCiB7CiAgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBk
b21faW9tbXUoZCk7Ci0gICAgc3RydWN0IG1hcHBlZF9ybXJyICptcm1yciwg
KnRtcDsKICAgICBjb25zdCBzdHJ1Y3QgYWNwaV9kcmhkX3VuaXQgKmRyaGQ7
CiAKICAgICBpZiAoIGxpc3RfZW1wdHkoJmFjcGlfZHJoZF91bml0cykgKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3Nh
ZmUgKCBtcm1yciwgdG1wLCAmaGQtPmFyY2gudnRkLm1hcHBlZF9ybXJycywg
bGlzdCApCi0gICAgewotICAgICAgICBsaXN0X2RlbCgmbXJtcnItPmxpc3Qp
OwotICAgICAgICB4ZnJlZShtcm1ycik7Ci0gICAgfQorICAgIGlvbW11X2lk
ZW50aXR5X21hcF90ZWFyZG93bihkKTsKIAogICAgIEFTU0VSVCghaGQtPmFy
Y2gudnRkLnBnZF9tYWRkcik7CiAKQEAgLTE5NDYsNzQgKzE5MzQsNiBAQCBz
dGF0aWMgaW50IF9faW5pdCB2dGRfZXB0X3BhZ2VfY29tcGF0aWJsCiAgICAg
ICAgICAgIChlcHRfaGFzXzFnYihlcHRfY2FwKSAmJiBvcHRfaGFwXzFnYikg
PD0gY2FwX3Nwc18xZ2IodnRkX2NhcCk7CiB9CiAKLXN0YXRpYyBpbnQgcm1y
cl9pZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBkb21haW4gKmQsIGJvb2xfdCBt
YXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz
dHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1MzIgZmxhZykKLXsKLSAgICB1bnNpZ25lZCBs
b25nIGJhc2VfcGZuID0gcm1yci0+YmFzZV9hZGRyZXNzID4+IFBBR0VfU0hJ
RlRfNEs7Ci0gICAgdW5zaWduZWQgbG9uZyBlbmRfcGZuID0gUEFHRV9BTElH
Tl80SyhybXJyLT5lbmRfYWRkcmVzcykgPj4gUEFHRV9TSElGVF80SzsKLSAg
ICBzdHJ1Y3QgbWFwcGVkX3JtcnIgKm1ybXJyOwotICAgIHN0cnVjdCBkb21h
aW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwotCi0gICAgQVNTRVJUKHBj
aWRldnNfbG9ja2VkKCkpOwotICAgIEFTU0VSVChybXJyLT5iYXNlX2FkZHJl
c3MgPCBybXJyLT5lbmRfYWRkcmVzcyk7Ci0KLSAgICAvKgotICAgICAqIE5v
IG5lZWQgdG8gYWNxdWlyZSBoZC0+YXJjaC5tYXBwaW5nX2xvY2s6IEJvdGgg
aW5zZXJ0aW9uIGFuZCByZW1vdmFsCi0gICAgICogZ2V0IGRvbmUgd2hpbGUg
aG9sZGluZyBwY2lkZXZzX2xvY2suCi0gICAgICovCi0gICAgbGlzdF9mb3Jf
ZWFjaF9lbnRyeSggbXJtcnIsICZoZC0+YXJjaC52dGQubWFwcGVkX3JtcnJz
LCBsaXN0ICkKLSAgICB7Ci0gICAgICAgIGlmICggbXJtcnItPmJhc2UgPT0g
cm1yci0+YmFzZV9hZGRyZXNzICYmCi0gICAgICAgICAgICAgbXJtcnItPmVu
ZCA9PSBybXJyLT5lbmRfYWRkcmVzcyApCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIGludCByZXQgPSAwOwotCi0gICAgICAgICAgICBpZiAoIG1hcCApCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgKyttcm1yci0+Y291bnQ7
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICB9Ci0K
LSAgICAgICAgICAgIGlmICggLS1tcm1yci0+Y291bnQgKQotICAgICAgICAg
ICAgICAgIHJldHVybiAwOwotCi0gICAgICAgICAgICB3aGlsZSAoIGJhc2Vf
cGZuIDwgZW5kX3BmbiApCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgaWYgKCBjbGVhcl9pZGVudGl0eV9wMm1fZW50cnkoZCwgYmFzZV9wZm4p
ICkKLSAgICAgICAgICAgICAgICAgICAgcmV0ID0gLUVOWElPOwotICAgICAg
ICAgICAgICAgIGJhc2VfcGZuKys7Ci0gICAgICAgICAgICB9Ci0KLSAgICAg
ICAgICAgIGxpc3RfZGVsKCZtcm1yci0+bGlzdCk7Ci0gICAgICAgICAgICB4
ZnJlZShtcm1ycik7Ci0gICAgICAgICAgICByZXR1cm4gcmV0OwotICAgICAg
ICB9Ci0gICAgfQotCi0gICAgaWYgKCAhbWFwICkKLSAgICAgICAgcmV0dXJu
IC1FTk9FTlQ7Ci0KLSAgICB3aGlsZSAoIGJhc2VfcGZuIDwgZW5kX3BmbiAp
Ci0gICAgewotICAgICAgICBpbnQgZXJyID0gc2V0X2lkZW50aXR5X3AybV9l
bnRyeShkLCBiYXNlX3BmbiwgcDJtX2FjY2Vzc19ydywgZmxhZyk7Ci0KLSAg
ICAgICAgaWYgKCBlcnIgKQotICAgICAgICAgICAgcmV0dXJuIGVycjsKLSAg
ICAgICAgYmFzZV9wZm4rKzsKLSAgICB9Ci0KLSAgICBtcm1yciA9IHhtYWxs
b2Moc3RydWN0IG1hcHBlZF9ybXJyKTsKLSAgICBpZiAoICFtcm1yciApCi0g
ICAgICAgIHJldHVybiAtRU5PTUVNOwotICAgIG1ybXJyLT5iYXNlID0gcm1y
ci0+YmFzZV9hZGRyZXNzOwotICAgIG1ybXJyLT5lbmQgPSBybXJyLT5lbmRf
YWRkcmVzczsKLSAgICBtcm1yci0+Y291bnQgPSAxOwotICAgIGxpc3RfYWRk
X3RhaWwoJm1ybXJyLT5saXN0LCAmaGQtPmFyY2gudnRkLm1hcHBlZF9ybXJy
cyk7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQogc3RhdGljIGludCBpbnRlbF9p
b21tdV9hZGRfZGV2aWNlKHU4IGRldmZuLCBzdHJ1Y3QgcGNpX2RldiAqcGRl
dikKIHsKICAgICBzdHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnI7CkBAIC0y
MDQ1LDcgKzE5NjUsOSBAQCBzdGF0aWMgaW50IGludGVsX2lvbW11X2FkZF9k
ZXZpY2UodTggZGV2CiAgICAgICAgICAgICAgKiBTaW5jZSBSTVJScyBhcmUg
YWx3YXlzIHJlc2VydmVkIGluIHRoZSBlODIwIG1hcCBmb3IgdGhlIGhhcmR3
YXJlCiAgICAgICAgICAgICAgKiBkb21haW4sIHRoZXJlIHNob3VsZG4ndCBi
ZSBhIGNvbmZsaWN0LgogICAgICAgICAgICAgICovCi0gICAgICAgICAgICBy
ZXQgPSBybXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWluLCAxLCBy
bXJyLCAwKTsKKyAgICAgICAgICAgIHJldCA9IGlvbW11X2lkZW50aXR5X21h
cHBpbmcocGRldi0+ZG9tYWluLCBwMm1fYWNjZXNzX3J3LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5iYXNlX2Fk
ZHJlc3MsIHJtcnItPmVuZF9hZGRyZXNzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwKTsKICAgICAgICAgICAgIGlmICgg
cmV0ICkKICAgICAgICAgICAgICAgICBkcHJpbnRrKFhFTkxPR19FUlIgVlRE
UFJFRklYLCAiZCVkOiBSTVJSIG1hcHBpbmcgZmFpbGVkXG4iLAogICAgICAg
ICAgICAgICAgICAgICAgICAgcGRldi0+ZG9tYWluLT5kb21haW5faWQpOwpA
QCAtMjA5MCw3ICsyMDEyLDggQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9y
ZW1vdmVfZGV2aWNlKHU4CiAgICAgICAgICAqIEFueSBmbGFnIGlzIG5vdGhp
bmcgdG8gY2xlYXIgdGhlc2UgbWFwcGluZ3MgYnV0IGhlcmUKICAgICAgICAg
ICogaXRzIGFsd2F5cyBzYWZlIGFuZCBzdHJpY3QgdG8gc2V0IDAuCiAgICAg
ICAgICAqLwotICAgICAgICBybXJyX2lkZW50aXR5X21hcHBpbmcocGRldi0+
ZG9tYWluLCAwLCBybXJyLCAwKTsKKyAgICAgICAgaW9tbXVfaWRlbnRpdHlf
bWFwcGluZyhwZGV2LT5kb21haW4sIHAybV9hY2Nlc3NfeCwgcm1yci0+YmFz
ZV9hZGRyZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJt
cnItPmVuZF9hZGRyZXNzLCAwKTsKICAgICB9CiAKICAgICByZXR1cm4gZG9t
YWluX2NvbnRleHRfdW5tYXAocGRldi0+ZG9tYWluLCBkZXZmbiwgcGRldik7
CkBAIC0yMjg5LDcgKzIyMTIsOCBAQCBzdGF0aWMgdm9pZCBfX2h3ZG9tX2lu
aXQgc2V0dXBfaHdkb21fcm1yCiAgICAgICAgICAqIGRvbWFpbiwgdGhlcmUg
c2hvdWxkbid0IGJlIGEgY29uZmxpY3QuIFNvIGl0cyBhbHdheXMgc2FmZSBh
bmQKICAgICAgICAgICogc3RyaWN0IHRvIHNldCAwLgogICAgICAgICAgKi8K
LSAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKGQsIDEsIHJt
cnIsIDApOworICAgICAgICByZXQgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5n
KGQsIHAybV9hY2Nlc3NfcncsIHJtcnItPmJhc2VfYWRkcmVzcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBybXJyLT5lbmRfYWRk
cmVzcywgMCk7CiAgICAgICAgIGlmICggcmV0ICkKICAgICAgICAgICAgIGRw
cmludGsoWEVOTE9HX0VSUiBWVERQUkVGSVgsCiAgICAgICAgICAgICAgICAg
ICAgICAiSU9NTVU6IG1hcHBpbmcgcmVzZXJ2ZWQgcmVnaW9uIGZhaWxlZFxu
Iik7CkBAIC0yNDYwLDcgKzIzODQsOSBAQCBzdGF0aWMgaW50IHJlYXNzaWdu
X2RldmljZV9vd25lcnNoaXAoCiAgICAgICAgICAgICAgICAgICogQW55IFJN
UlIgZmxhZyBpcyBhbHdheXMgaWdub3JlZCB3aGVuIHJlbW92ZSBhIGRldmlj
ZSwKICAgICAgICAgICAgICAgICAgKiBidXQgaXRzIGFsd2F5cyBzYWZlIGFu
ZCBzdHJpY3QgdG8gc2V0IDAuCiAgICAgICAgICAgICAgICAgICovCi0gICAg
ICAgICAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5nKHNvdXJj
ZSwgMCwgcm1yciwgMCk7CisgICAgICAgICAgICAgICAgcmV0ID0gaW9tbXVf
aWRlbnRpdHlfbWFwcGluZyhzb3VyY2UsIHAybV9hY2Nlc3NfeCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnIt
PmJhc2VfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCAwKTsKICAgICAg
ICAgICAgICAgICBpZiAoIHJldCAhPSAtRU5PRU5UICkKICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIHJldDsKICAgICAgICAgICAgIH0KQEAgLTI1NTYs
NyArMjQ4Miw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW9tbXVfYXNzaWduX2Rl
dmljZSgKICAgICAgICAgICAgICBQQ0lfQlVTKGJkZikgPT0gYnVzICYmCiAg
ICAgICAgICAgICAgUENJX0RFVkZOMihiZGYpID09IGRldmZuICkKICAgICAg
ICAgewotICAgICAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0eV9tYXBwaW5n
KGQsIDEsIHJtcnIsIGZsYWcpOworICAgICAgICAgICAgcmV0ID0gaW9tbXVf
aWRlbnRpdHlfbWFwcGluZyhkLCBwMm1fYWNjZXNzX3J3LCBybXJyLT5iYXNl
X2FkZHJlc3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCBmbGFnKTsKICAgICAgICAgICAg
IGlmICggcmV0ICkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBp
bnQgcmM7Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21t
dS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5j
CkBAIC0xNDMsNiArMTQzLDcgQEAgaW50IGFyY2hfaW9tbXVfZG9tYWluX2lu
aXQoc3RydWN0IGRvbWFpbgogCiAgICAgSU5JVF9QQUdFX0xJU1RfSEVBRCgm
aGQtPmFyY2gucGd0YWJsZXMubGlzdCk7CiAgICAgc3Bpbl9sb2NrX2luaXQo
JmhkLT5hcmNoLnBndGFibGVzLmxvY2spOworICAgIElOSVRfTElTVF9IRUFE
KCZoZC0+YXJjaC5pZGVudGl0eV9tYXBzKTsKIAogICAgIHJldHVybiAwOwog
fQpAQCAtMTU4LDYgKzE1OSw5OSBAQCB2b2lkIGFyY2hfaW9tbXVfZG9tYWlu
X2Rlc3Ryb3koc3RydWN0IGRvCiAgICAgICAgICAgIHBhZ2VfbGlzdF9lbXB0
eSgmZG9tX2lvbW11KGQpLT5hcmNoLnBndGFibGVzLmxpc3QpKTsKIH0KIAor
c3RydWN0IGlkZW50aXR5X21hcCB7CisgICAgc3RydWN0IGxpc3RfaGVhZCBs
aXN0OworICAgIHBhZGRyX3QgYmFzZSwgZW5kOworICAgIHAybV9hY2Nlc3Nf
dCBhY2Nlc3M7CisgICAgdW5zaWduZWQgaW50IGNvdW50OworfTsKKworaW50
IGlvbW11X2lkZW50aXR5X21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCwgcDJt
X2FjY2Vzc190IHAybWEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBw
YWRkcl90IGJhc2UsIHBhZGRyX3QgZW5kLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IGZsYWcpCit7CisgICAgdW5zaWduZWQg
bG9uZyBiYXNlX3BmbiA9IGJhc2UgPj4gUEFHRV9TSElGVF80SzsKKyAgICB1
bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdFX0FMSUdOXzRLKGVuZCkgPj4g
UEFHRV9TSElGVF80SzsKKyAgICBzdHJ1Y3QgaWRlbnRpdHlfbWFwICptYXA7
CisgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7
CisKKyAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQoKSk7CisgICAgQVNTRVJU
KGJhc2UgPCBlbmQpOworCisgICAgLyoKKyAgICAgKiBObyBuZWVkIHRvIGFj
cXVpcmUgaGQtPmFyY2gubWFwcGluZ19sb2NrOiBCb3RoIGluc2VydGlvbiBh
bmQgcmVtb3ZhbAorICAgICAqIGdldCBkb25lIHdoaWxlIGhvbGRpbmcgcGNp
ZGV2c19sb2NrLgorICAgICAqLworICAgIGxpc3RfZm9yX2VhY2hfZW50cnko
IG1hcCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMsIGxpc3QgKQorICAgIHsK
KyAgICAgICAgaWYgKCBtYXAtPmJhc2UgPT0gYmFzZSAmJiBtYXAtPmVuZCA9
PSBlbmQgKQorICAgICAgICB7CisgICAgICAgICAgICBpbnQgcmV0ID0gMDsK
KworICAgICAgICAgICAgaWYgKCBwMm1hICE9IHAybV9hY2Nlc3NfeCApCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCBtYXAtPmFjY2Vz
cyAhPSBwMm1hICkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FQURE
UklOVVNFOworICAgICAgICAgICAgICAgICsrbWFwLT5jb3VudDsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgaWYgKCAtLW1hcC0+Y291bnQgKQorICAgICAgICAgICAgICAgIHJl
dHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAoIGJhc2VfcGZuIDwgZW5k
X3BmbiApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCBj
bGVhcl9pZGVudGl0eV9wMm1fZW50cnkoZCwgYmFzZV9wZm4pICkKKyAgICAg
ICAgICAgICAgICAgICAgcmV0ID0gLUVOWElPOworICAgICAgICAgICAgICAg
IGJhc2VfcGZuKys7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGxp
c3RfZGVsKCZtYXAtPmxpc3QpOworICAgICAgICAgICAgeGZyZWUobWFwKTsK
KworICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAgICAgICAgfQorCisgICAg
ICAgIGlmICggZW5kID49IG1hcC0+YmFzZSAmJiBtYXAtPmVuZCA+PSBiYXNl
ICkKKyAgICAgICAgICAgIHJldHVybiAtRUFERFJJTlVTRTsKKyAgICB9CisK
KyAgICBpZiAoIHAybWEgPT0gcDJtX2FjY2Vzc194ICkKKyAgICAgICAgcmV0
dXJuIC1FTk9FTlQ7CisKKyAgICB3aGlsZSAoIGJhc2VfcGZuIDwgZW5kX3Bm
biApCisgICAgeworICAgICAgICBpbnQgZXJyID0gc2V0X2lkZW50aXR5X3Ay
bV9lbnRyeShkLCBiYXNlX3BmbiwgcDJtYSwgZmxhZyk7CisKKyAgICAgICAg
aWYgKCBlcnIgKQorICAgICAgICAgICAgcmV0dXJuIGVycjsKKyAgICAgICAg
YmFzZV9wZm4rKzsKKyAgICB9CisKKyAgICBtYXAgPSB4bWFsbG9jKHN0cnVj
dCBpZGVudGl0eV9tYXApOworICAgIGlmICggIW1hcCApCisgICAgICAgIHJl
dHVybiAtRU5PTUVNOworICAgIG1hcC0+YmFzZSA9IGJhc2U7CisgICAgbWFw
LT5lbmQgPSBlbmQ7CisgICAgbWFwLT5hY2Nlc3MgPSBwMm1hOworICAgIG1h
cC0+Y291bnQgPSAxOworICAgIGxpc3RfYWRkX3RhaWwoJm1hcC0+bGlzdCwg
JmhkLT5hcmNoLmlkZW50aXR5X21hcHMpOworCisgICAgcmV0dXJuIDA7Cit9
CisKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKHN0cnVjdCBk
b21haW4gKmQpCit7CisgICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBk
b21faW9tbXUoZCk7CisgICAgc3RydWN0IGlkZW50aXR5X21hcCAqbWFwLCAq
dG1wOworCisgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlICggbWFwLCB0
bXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBzLCBsaXN0ICkKKyAgICB7Cisg
ICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOworICAgICAgICB4ZnJlZSht
YXApOworICAgIH0KK30KKwogc3RhdGljIGJvb2wgX19od2RvbV9pbml0IGh3
ZG9tX2lvbW11X21hcChjb25zdCBzdHJ1Y3QgZG9tYWluICpkLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs
b25nIHBmbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZuKQotLS0gYS94ZW4vaW5jbHVk
ZS9hc20teDg2L2lvbW11LmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9p
b21tdS5oCkBAIC0xNiw2ICsxNiw3IEBACiAKICNpbmNsdWRlIDx4ZW4vZXJy
bm8uaD4KICNpbmNsdWRlIDx4ZW4vbGlzdC5oPgorI2luY2x1ZGUgPHhlbi9t
ZW1fYWNjZXNzLmg+CiAjaW5jbHVkZSA8eGVuL3NwaW5sb2NrLmg+CiAjaW5j
bHVkZSA8YXNtL2FwaWNkZWYuaD4KICNpbmNsdWRlIDxhc20vcHJvY2Vzc29y
Lmg+CkBAIC01MSwxMyArNTIsMTQgQEAgc3RydWN0IGFyY2hfaW9tbXUKICAg
ICAgICAgc3BpbmxvY2tfdCBsb2NrOwogICAgIH0gcGd0YWJsZXM7CiAKKyAg
ICBzdHJ1Y3QgbGlzdF9oZWFkIGlkZW50aXR5X21hcHM7CisKICAgICB1bmlv
biB7CiAgICAgICAgIC8qIEludGVsIFZULWQgKi8KICAgICAgICAgc3RydWN0
IHsKICAgICAgICAgICAgIHVpbnQ2NF90IHBnZF9tYWRkcjsgLyogaW8gcGFn
ZSBkaXJlY3RvcnkgbWFjaGluZSBhZGRyZXNzICovCiAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgYWdhdzsgLyogYWRqdXN0ZWQgZ3Vlc3QgYWRkcmVzcyB3
aWR0aCwgMCBpcyBsZXZlbCAyIDMwLWJpdCAqLwogICAgICAgICAgICAgdWlu
dDY0X3QgaW9tbXVfYml0bWFwOyAvKiBiaXRtYXAgb2YgaW9tbXUocykgdGhh
dCB0aGUgZG9tYWluIHVzZXMgKi8KLSAgICAgICAgICAgIHN0cnVjdCBsaXN0
X2hlYWQgbWFwcGVkX3JtcnJzOwogICAgICAgICB9IHZ0ZDsKICAgICAgICAg
LyogQU1EIElPTU1VICovCiAgICAgICAgIHN0cnVjdCB7CkBAIC0xMjMsNiAr
MTI1LDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBpb21tdV9kaXNhYmxlX3gy
YXBpYygKICAgICAgICAgaW9tbXVfb3BzLmRpc2FibGVfeDJhcGljKCk7CiB9
CiAKK2ludCBpb21tdV9pZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBkb21haW4g
KmQsIHAybV9hY2Nlc3NfdCBwMm1hLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGVuZCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnKTsKK3ZvaWQgaW9t
bXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpOwor
CiBleHRlcm4gYm9vbCB1bnRydXN0ZWRfbXNpOwogCiBpbnQgcGlfdXBkYXRl
X2lydGUoY29uc3Qgc3RydWN0IHBpX2Rlc2MgKnBpX2Rlc2MsIGNvbnN0IHN0
cnVjdCBwaXJxICpwaXJxLAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3Ay
bS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKQEAgLTkxMiw2
ICs5MTIsMzQgQEAgc3RydWN0IHAybV9kb21haW4gKnAybV9nZXRfYWx0cDJt
KHN0cnVjdAogc3RhdGljIGlubGluZSB2b2lkIHAybV9hbHRwMm1fY2hlY2so
c3RydWN0IHZjcHUgKnYsIHVpbnQxNl90IGlkeCkge30KICNlbmRpZgogCisv
KiBwMm0gYWNjZXNzIHRvIElPTU1VIGZsYWdzICovCitzdGF0aWMgaW5saW5l
IHVuc2lnbmVkIGludCBwMm1fYWNjZXNzX3RvX2lvbW11X2ZsYWdzKHAybV9h
Y2Nlc3NfdCBwMm1hKQoreworICAgIHN3aXRjaCAoIHAybWEgKQorICAgIHsK
KyAgICBjYXNlIHAybV9hY2Nlc3Nfcnc6CisgICAgY2FzZSBwMm1fYWNjZXNz
X3J3eDoKKyAgICAgICAgcmV0dXJuIElPTU1VRl9yZWFkYWJsZSB8IElPTU1V
Rl93cml0YWJsZTsKKworICAgIGNhc2UgcDJtX2FjY2Vzc19yOgorICAgIGNh
c2UgcDJtX2FjY2Vzc19yeDoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcngycnc6
CisgICAgICAgIHJldHVybiBJT01NVUZfcmVhZGFibGU7CisKKyAgICBjYXNl
IHAybV9hY2Nlc3NfdzoKKyAgICBjYXNlIHAybV9hY2Nlc3Nfd3g6CisgICAg
ICAgIHJldHVybiBJT01NVUZfd3JpdGFibGU7CisKKyAgICBjYXNlIHAybV9h
Y2Nlc3NfbjoKKyAgICBjYXNlIHAybV9hY2Nlc3NfeDoKKyAgICBjYXNlIHAy
bV9hY2Nlc3NfbjJyd3g6CisgICAgICAgIHJldHVybiAwOworICAgIH0KKwor
ICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOworICAgIHJldHVybiAwOworfQor
CiAvKgogICogcDJtIHR5cGUgdG8gSU9NTVUgZmxhZ3MKICAqLwpAQCAtOTMz
LDkgKzk2MSwxMCBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBwMm1f
Z2V0X2lvbW11CiAgICAgICAgIGZsYWdzID0gSU9NTVVGX3JlYWRhYmxlOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIHAybV9tbWlvX2RpcmVjdDoKLSAg
ICAgICAgZmxhZ3MgPSBJT01NVUZfcmVhZGFibGU7Ci0gICAgICAgIGlmICgg
IXJhbmdlc2V0X2NvbnRhaW5zX3NpbmdsZXRvbihtbWlvX3JvX3Jhbmdlcywg
bWZuX3gobWZuKSkgKQotICAgICAgICAgICAgZmxhZ3MgfD0gSU9NTVVGX3dy
aXRhYmxlOworICAgICAgICBmbGFncyA9IHAybV9hY2Nlc3NfdG9faW9tbXVf
ZmxhZ3MocDJtYSk7CisgICAgICAgIGlmICggKGZsYWdzICYgSU9NTVVGX3dy
aXRhYmxlKSAmJgorICAgICAgICAgICAgIHJhbmdlc2V0X2NvbnRhaW5zX3Np
bmdsZXRvbihtbWlvX3JvX3JhbmdlcywgbWZuX3gobWZuKSkgKQorICAgICAg
ICAgICAgZmxhZ3MgJj0gfklPTU1VRl93cml0YWJsZTsKICAgICAgICAgYnJl
YWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgZmxhZ3MgPSAwOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+CgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXUuaAorKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXUu
aApAQCAtMjMyLDggKzIzMiwxMCBAQCBpbnQgX19tdXN0X2NoZWNrIGFtZF9p
b21tdV91bm1hcF9wYWdlKHN0CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZmx1c2hfZmxhZ3MpOwogaW50
IF9fbXVzdF9jaGVjayBhbWRfaW9tbXVfYWxsb2Nfcm9vdChzdHJ1Y3QgZG9t
YWluICpkKTsKIGludCBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlf
bWFwKHN0cnVjdCBkb21haW4gKmRvbWFpbiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgcGh5c19hZGRyLCB1bnNp
Z25lZCBsb25nIHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgaXcsIGludCBpcik7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgaXZyc191bml0
eV9tYXAgKm1hcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGludCBmbGFnKTsKK2ludCBhbWRfaW9tbXVfcmVz
ZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
c3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXApOwogaW50IF9fbXVzdF9jaGVj
ayBhbWRfaW9tbXVfZmx1c2hfaW90bGJfcGFnZXMoc3RydWN0IGRvbWFpbiAq
ZCwgZGZuX3QgZGZuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBwYWdlX2NvdW50LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50IGZsdXNoX2ZsYWdzKTsKLS0tIGEveGVuL2RyaXZlcnMvcGFz
c3Rocm91Z2gvYW1kL2lvbW11X21hcC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bh
c3N0aHJvdWdoL2FtZC9pb21tdV9tYXAuYwpAQCAtNDE5LDM4ICs0MTksNDkg
QEAgaW50IGFtZF9pb21tdV9mbHVzaF9pb3RsYl9hbGwoc3RydWN0IGRvbQog
ICAgIHJldHVybiAwOwogfQogCi1pbnQgYW1kX2lvbW11X3Jlc2VydmVfZG9t
YWluX3VuaXR5X21hcChzdHJ1Y3QgZG9tYWluICpkb21haW4sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IHBoeXNf
YWRkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGxvbmcgc2l6ZSwgaW50IGl3LCBpbnQgaXIpCitpbnQgYW1k
X2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcChzdHJ1Y3QgZG9tYWlu
ICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgc3RydWN0IGl2cnNfdW5pdHlfbWFwICptYXAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxh
ZykKIHsKLSAgICB1bnNpZ25lZCBsb25nIG5wYWdlcywgaTsKLSAgICB1bnNp
Z25lZCBsb25nIGdmbjsKLSAgICB1bnNpZ25lZCBpbnQgZmxhZ3MgPSAhIWly
OwotICAgIHVuc2lnbmVkIGludCBmbHVzaF9mbGFncyA9IDA7Ci0gICAgaW50
IHJ0ID0gMDsKLQotICAgIGlmICggaXcgKQotICAgICAgICBmbGFncyB8PSBJ
T01NVUZfd3JpdGFibGU7Ci0KLSAgICBucGFnZXMgPSByZWdpb25fdG9fcGFn
ZXMocGh5c19hZGRyLCBzaXplKTsKLSAgICBnZm4gPSBwaHlzX2FkZHIgPj4g
UEFHRV9TSElGVDsKLSAgICBmb3IgKCBpID0gMDsgaSA8IG5wYWdlczsgaSsr
ICkKKyAgICBpbnQgcmM7CisKKyAgICBpZiAoIGQgPT0gZG9tX2lvICkKKyAg
ICAgICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCByYyA9IDA7ICFyYyAmJiBt
YXA7IG1hcCA9IG1hcC0+bmV4dCApCiAgICAgewotICAgICAgICB1bnNpZ25l
ZCBsb25nIGZyYW1lID0gZ2ZuICsgaTsKKyAgICAgICAgcDJtX2FjY2Vzc190
IHAybWEgPSBwMm1fYWNjZXNzX247CisKKyAgICAgICAgaWYgKCBtYXAtPnJl
YWQgKQorICAgICAgICAgICAgcDJtYSB8PSBwMm1fYWNjZXNzX3I7CisgICAg
ICAgIGlmICggbWFwLT53cml0ZSApCisgICAgICAgICAgICBwMm1hIHw9IHAy
bV9hY2Nlc3NfdzsKIAotICAgICAgICBydCA9IGFtZF9pb21tdV9tYXBfcGFn
ZShkb21haW4sIF9kZm4oZnJhbWUpLCBfbWZuKGZyYW1lKSwgZmxhZ3MsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbHVzaF9mbGFncyk7
Ci0gICAgICAgIGlmICggcnQgIT0gMCApCi0gICAgICAgICAgICBicmVhazsK
KyAgICAgICAgcmMgPSBpb21tdV9pZGVudGl0eV9tYXBwaW5nKGQsIHAybWEs
IG1hcC0+YWRkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1hcC0+YWRkciArIG1hcC0+bGVuZ3RoIC0gMSwgZmxhZyk7CiAgICAg
fQogCi0gICAgLyogVXNlIHdoaWxlLWJyZWFrIHRvIGF2b2lkIGNvbXBpbGVy
IHdhcm5pbmcgKi8KLSAgICB3aGlsZSAoIGZsdXNoX2ZsYWdzICYmCi0gICAg
ICAgICAgICBhbWRfaW9tbXVfZmx1c2hfaW90bGJfcGFnZXMoZG9tYWluLCBf
ZGZuKGdmbiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbnBhZ2VzLCBmbHVzaF9mbGFncykgKQotICAgICAgICBicmVhazsK
KyAgICByZXR1cm4gcmM7Cit9CisKK2ludCBhbWRfaW9tbXVfcmVzZXJ2ZV9k
b21haW5fdW5pdHlfdW5tYXAoc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0
IGl2cnNfdW5pdHlfbWFwICptYXApCit7CisgICAgaW50IHJjOworCisgICAg
aWYgKCBkID09IGRvbV9pbyApCisgICAgICAgIHJldHVybiAwOworCisgICAg
Zm9yICggcmMgPSAwOyBtYXA7IG1hcCA9IG1hcC0+bmV4dCApCisgICAgewor
ICAgICAgICBpbnQgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhkLCBw
Mm1fYWNjZXNzX3gsIG1hcC0+YWRkciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWFwLT5hZGRyICsgbWFwLT5sZW5ndGgg
LSAxLCAwKTsKKworICAgICAgICBpZiAoIHJldCAmJiByZXQgIT0gLUVOT0VO
VCAmJiAhcmMgKQorICAgICAgICAgICAgcmMgPSByZXQ7CisgICAgfQogCi0g
ICAgcmV0dXJuIHJ0OworICAgIHJldHVybiByYzsKIH0KIAogaW50IF9faW5p
dCBhbWRfaW9tbXVfcXVhcmFudGluZV9pbml0KHN0cnVjdCBkb21haW4gKmQp
Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lv
bW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9h
bWRfaW9tbXUuYwpAQCAtMzI5LDYgKzMyOSw3IEBAIHN0YXRpYyBpbnQgcmVh
c3NpZ25fZGV2aWNlKHN0cnVjdCBkb21haW4KIHsKICAgICBzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdTsKICAgICBpbnQgYmRmLCByYzsKKyAgICBjb25zdCBz
dHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9pdnJz
X21hcHBpbmdzKHBkZXYtPnNlZyk7CiAKICAgICBiZGYgPSBQQ0lfQkRGMihw
ZGV2LT5idXMsIHBkZXYtPmRldmZuKTsKICAgICBpb21tdSA9IGZpbmRfaW9t
bXVfZm9yX2RldmljZShwZGV2LT5zZWcsIGJkZik7CkBAIC0zNDMsMTAgKzM0
NCwyNCBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2RldmljZShzdHJ1Y3QgZG9t
YWluCiAKICAgICBhbWRfaW9tbXVfZGlzYWJsZV9kb21haW5fZGV2aWNlKHNv
dXJjZSwgaW9tbXUsIGRldmZuLCBwZGV2KTsKIAotICAgIGlmICggZGV2Zm4g
PT0gcGRldi0+ZGV2Zm4gKQorICAgIC8qCisgICAgICogSWYgdGhlIGRldmlj
ZSBiZWxvbmdzIHRvIHRoZSBoYXJkd2FyZSBkb21haW4sIGFuZCBpdCBoYXMg
YSB1bml0eSBtYXBwaW5nLAorICAgICAqIGRvbid0IHJlbW92ZSBpdCBmcm9t
IHRoZSBoYXJkd2FyZSBkb21haW4sIGJlY2F1c2UgQklPUyBtYXkgcmVmZXJl
bmNlIHRoYXQKKyAgICAgKiBtYXBwaW5nLgorICAgICAqLworICAgIGlmICgg
IWlzX2hhcmR3YXJlX2RvbWFpbihzb3VyY2UpICkKICAgICB7Ci0gICAgICAg
IGxpc3RfbW92ZSgmcGRldi0+ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBkZXZf
bGlzdCk7Ci0gICAgICAgIHBkZXYtPmRvbWFpbiA9IHRhcmdldDsKKyAgICAg
ICAgcmMgPSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAo
CisgICAgICAgICAgICAgICAgIHNvdXJjZSwKKyAgICAgICAgICAgICAgICAg
aXZyc19tYXBwaW5nc1tnZXRfZG1hX3JlcXVlc3Rvcl9pZChwZGV2LT5zZWcs
IGJkZildLnVuaXR5X21hcCk7CisgICAgICAgIGlmICggcmMgKQorICAgICAg
ICAgICAgcmV0dXJuIHJjOworICAgIH0KKworICAgIGlmICggZGV2Zm4gPT0g
cGRldi0+ZGV2Zm4gJiYgcGRldi0+ZG9tYWluICE9IGRvbV9pbyApCisgICAg
eworICAgICAgICBsaXN0X21vdmUoJnBkZXYtPmRvbWFpbl9saXN0LCAmZG9t
X2lvLT5wZGV2X2xpc3QpOworICAgICAgICBwZGV2LT5kb21haW4gPSBkb21f
aW87CiAgICAgfQogCiAgICAgcmMgPSBhbGxvY2F0ZV9kb21haW5fcmVzb3Vy
Y2VzKHRhcmdldCk7CkBAIC0zNTcsNiArMzcyLDEyIEBAIHN0YXRpYyBpbnQg
cmVhc3NpZ25fZGV2aWNlKHN0cnVjdCBkb21haW4KICAgICBBTURfSU9NTVVf
REVCVUcoIlJlLWFzc2lnbiAlcHAgZnJvbSBkb20lZCB0byBkb20lZFxuIiwK
ICAgICAgICAgICAgICAgICAgICAgJnBkZXYtPnNiZGYsIHNvdXJjZS0+ZG9t
YWluX2lkLCB0YXJnZXQtPmRvbWFpbl9pZCk7CiAKKyAgICBpZiAoIGRldmZu
ID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRvbWFpbiAhPSB0YXJnZXQgKQor
ICAgIHsKKyAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21haW5fbGlzdCwg
JnRhcmdldC0+cGRldl9saXN0KTsKKyAgICAgICAgcGRldi0+ZG9tYWluID0g
dGFyZ2V0OworICAgIH0KKwogICAgIHJldHVybiAwOwogfQogCkBAIC0zNjcs
MjAgKzM4OCwyOCBAQCBzdGF0aWMgaW50IGFtZF9pb21tdV9hc3NpZ25fZGV2
aWNlKHN0cnVjCiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFw
cGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwogICAgIGlu
dCBiZGYgPSBQQ0lfQkRGMihwZGV2LT5idXMsIGRldmZuKTsKICAgICBpbnQg
cmVxX2lkID0gZ2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRldi0+c2VnLCBiZGYp
OwotICAgIGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqdW5pdHlfbWFw
OworICAgIGludCByYyA9IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0
eV9tYXAoCisgICAgICAgICAgICAgICAgIGQsIGl2cnNfbWFwcGluZ3NbcmVx
X2lkXS51bml0eV9tYXAsIGZsYWcpOwogCi0gICAgZm9yICggdW5pdHlfbWFw
ID0gaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVuaXR5X21hcDsgdW5pdHlfbWFw
OwotICAgICAgICAgIHVuaXR5X21hcCA9IHVuaXR5X21hcC0+bmV4dCApCisg
ICAgaWYgKCAhcmMgKQorICAgICAgICByYyA9IHJlYXNzaWduX2RldmljZShw
ZGV2LT5kb21haW4sIGQsIGRldmZuLCBwZGV2KTsKKworICAgIGlmICggcmMg
JiYgIWlzX2hhcmR3YXJlX2RvbWFpbihkKSApCiAgICAgewotICAgICAgICBp
bnQgcmMgPSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKAot
ICAgICAgICAgICAgICAgICAgICAgZCwgdW5pdHlfbWFwLT5hZGRyLCB1bml0
eV9tYXAtPmxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgIHVuaXR5X21h
cC0+d3JpdGUsIHVuaXR5X21hcC0+cmVhZCk7CisgICAgICAgIGludCByZXQg
PSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfdW5tYXAoCisgICAg
ICAgICAgICAgICAgICAgICAgZCwgaXZyc19tYXBwaW5nc1tyZXFfaWRdLnVu
aXR5X21hcCk7CiAKLSAgICAgICAgaWYgKCByYyApCi0gICAgICAgICAgICBy
ZXR1cm4gcmM7CisgICAgICAgIGlmICggcmV0ICkKKyAgICAgICAgeworICAg
ICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgIkFNRC1WaTogIgorICAgICAg
ICAgICAgICAgICAgICJ1bml0eS11bm1hcCBmb3IgJXBkLyUwNHg6JTAyeDol
MDJ4LiV1IGZhaWxlZCAoJWQpXG4iLAorICAgICAgICAgICAgICAgICAgIGQs
IHBkZXYtPnNlZywgcGRldi0+YnVzLAorICAgICAgICAgICAgICAgICAgIFBD
SV9TTE9UKGRldmZuKSwgUENJX0ZVTkMoZGV2Zm4pLCByZXQpOworICAgICAg
ICAgICAgZG9tYWluX2NyYXNoKGQpOworICAgICAgICB9CiAgICAgfQogCi0g
ICAgcmV0dXJuIHJlYXNzaWduX2RldmljZShwZGV2LT5kb21haW4sIGQsIGRl
dmZuLCBwZGV2KTsKKyAgICByZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyB2b2lk
IGFtZF9pb21tdV9jbGVhcl9yb290X3BndGFibGUoc3RydWN0IGRvbWFpbiAq
ZCkKQEAgLTM5NCw2ICs0MjMsNyBAQCBzdGF0aWMgdm9pZCBhbWRfaW9tbXVf
Y2xlYXJfcm9vdF9wZ3RhYmxlCiAKIHN0YXRpYyB2b2lkIGFtZF9pb21tdV9k
b21haW5fZGVzdHJveShzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIGlvbW11
X2lkZW50aXR5X21hcF90ZWFyZG93bihkKTsKICAgICBBU1NFUlQoIWRvbV9p
b21tdShkKS0+YXJjaC5hbWQucm9vdF90YWJsZSk7CiB9CiAK

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KCi0tLSBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdS5oCisrKyBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdS5oCkBAIC0zMDQsNiArMzA0LDgg
QEAgZXh0ZXJuIHN0cnVjdCBocGV0X3NiZGYgewogICAgIH0gaW5pdDsKIH0g
aHBldF9zYmRmOwogCitleHRlcm4gaW50IGFtZF9pb21tdV9taW5fcGFnaW5n
X21vZGU7CisKIGV4dGVybiB2b2lkICpzaGFyZWRfaW50cmVtYXBfdGFibGU7
CiBleHRlcm4gdW5zaWduZWQgbG9uZyAqc2hhcmVkX2ludHJlbWFwX2ludXNl
OwogCi0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9h
Y3BpLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2FjcGkuYwpAQCAtMTE3LDEyICsxMTcsOCBAQCBzdGF0aWMgc3RydWN0IGFt
ZF9pb21tdSAqIF9faW5pdCBmaW5kX2lvCiB9CiAKIHN0YXRpYyBpbnQgX19p
bml0IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKAotICAgIHN0cnVj
dCBhbWRfaW9tbXUgKmlvbW11LCB1aW50NjRfdCBiYXNlLCB1aW50NjRfdCBs
aW1pdCwKLSAgICBib29sIGFsbCwgYm9vbCBpdywgYm9vbCBpcikKKyAgICBz
dHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGxpbWl0LCBib29sIGFsbCkKIHsKLSAgICBpZiAoICFpciB8fCAhaXcgKQot
ICAgICAgICByZXR1cm4gLUVQRVJNOwotCiAgICAgLyogbmVlZCB0byBleHRl
bmQgZXhjbHVzaW9uIHJhbmdlPyAqLwogICAgIGlmICggaW9tbXUtPmV4Y2x1
c2lvbl9lbmFibGUgKQogICAgIHsKQEAgLTE1MSwxNCArMTQ3LDE4IEBAIHN0
YXRpYyBpbnQgX19pbml0IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl8KIHsKICAg
ICBzdHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9p
dnJzX21hcHBpbmdzKHNlZyk7CiAgICAgc3RydWN0IGl2cnNfdW5pdHlfbWFw
ICp1bml0eV9tYXAgPSBpdnJzX21hcHBpbmdzW2JkZl0udW5pdHlfbWFwOwor
ICAgIGludCBwYWdpbmdfbW9kZSA9IGFtZF9pb21tdV9nZXRfcGFnaW5nX21v
ZGUoUEZOX1VQKGJhc2UgKyBsZW5ndGgpKTsKKworICAgIGlmICggcGFnaW5n
X21vZGUgPCAwICkKKyAgICAgICAgcmV0dXJuIHBhZ2luZ19tb2RlOwogCiAg
ICAgLyogQ2hlY2sgZm9yIG92ZXJsYXBzLiAqLwogICAgIGZvciAoIDsgdW5p
dHlfbWFwOyB1bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQogICAgIHsK
ICAgICAgICAgLyoKICAgICAgICAgICogRXhhY3QgbWF0Y2hlcyBhcmUgb2th
eS4gVGhpcyBjYW4gaW4gcGFydGljdWxhciBoYXBwZW4gd2hlbgotICAgICAg
ICAgKiByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgpIGNh
bGxzIGhlcmUgdHdpY2UgZm9yIHRoZQotICAgICAgICAgKiBzYW1lIChzLGIs
ZCxmKS4KKyAgICAgICAgICogcmVnaXN0ZXJfcmFuZ2VfZm9yX2RldmljZSgp
IGNhbGxzIGhlcmUgdHdpY2UgZm9yIHRoZSBzYW1lCisgICAgICAgICAqIChz
LGIsZCxmKS4KICAgICAgICAgICovCiAgICAgICAgIGlmICggYmFzZSA9PSB1
bml0eV9tYXAtPmFkZHIgJiYgbGVuZ3RoID09IHVuaXR5X21hcC0+bGVuZ3Ro
ICYmCiAgICAgICAgICAgICAgaXIgPT0gdW5pdHlfbWFwLT5yZWFkICYmIGl3
ID09IHVuaXR5X21hcC0+d3JpdGUgKQpAQCAtMTg2LDU1ICsxODYsNTIgQEAg
c3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV91bml0eV9tYXBfZm9yXwogICAg
IHVuaXR5X21hcC0+bmV4dCA9IGl2cnNfbWFwcGluZ3NbYmRmXS51bml0eV9t
YXA7CiAgICAgaXZyc19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcCA9IHVuaXR5
X21hcDsKIAorICAgIGlmICggcGFnaW5nX21vZGUgPiBhbWRfaW9tbXVfbWlu
X3BhZ2luZ19tb2RlICkKKyAgICAgICAgYW1kX2lvbW11X21pbl9wYWdpbmdf
bW9kZSA9IHBhZ2luZ19tb2RlOworCiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0
YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3Jf
YWxsX2RldmljZXMoCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25l
ZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5p
dCByZWdpc3Rlcl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCisgICAgcGFkZHJf
dCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29s
IGV4Y2x1c2lvbikKIHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCi0g
ICAgdW5zaWduZWQgbG9uZyByYW5nZV90b3AsIGlvbW11X3RvcCwgbGVuZ3Ro
OwogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwotICAgIHVuc2lnbmVk
IGludCBiZGY7CiAgICAgaW50IHJjID0gMDsKIAogICAgIC8qIGlzIHBhcnQg
b2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBvZiBJT01NVSB2aXJ0dWFsIGFk
ZHJlc3Mgc3BhY2U/ICovCiAgICAgLyogbm90ZTogJ2xpbWl0JyBwYXJhbWV0
ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFsaWduZWQgKi8KLSAgICByYW5n
ZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsKLSAgICBpb21tdV90b3AgPSBt
YXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBpZiAoIGJhc2UgPCBpb21tdV90
b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCByYW5nZV90b3AgPiBpb21tdV90
b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9wID0gaW9tbXVfdG9wOwotICAg
ICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBiYXNlOwotICAgICAgICAvKiBy
ZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZp
Y2VzICovCi0gICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJpZXMgYXJlIHBh
cnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwotICAgICAgICBmb3IgKCBi
ZGYgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysg
KQotICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2
aWNlKHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0gICAgICAg
IC8qIHB1c2ggJ2Jhc2UnIGp1c3Qgb3V0c2lkZSBvZiB2aXJ0dWFsIGFkZHJl
c3Mgc3BhY2UgKi8KLSAgICAgICAgYmFzZSA9IGlvbW11X3RvcDsKLSAgICB9
Ci0gICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhjbHVzaW9uIHJhbmdlIHNldHRp
bmdzICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9tbXVfdG9wICkK
KyAgICBpZiAoIGV4Y2x1c2lvbiApCiAgICAgewogICAgICAgICBmb3JfZWFj
aF9hbWRfaW9tbXUoIGlvbW11ICkKICAgICAgICAgewotICAgICAgICAgICAg
cmMgPSByZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFz
ZSwgbGltaXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOwotICAgICAg
ICAgICAgaWYgKCByYyApCi0gICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICBpbnQgcmV0ID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFu
Z2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgLyogYWxsICov
KTsKKworICAgICAgICAgICAgaWYgKCByZXQgJiYgIXJjICkKKyAgICAgICAg
ICAgICAgICByYyA9IHJldDsKICAgICAgICAgfQogICAgIH0KIAorICAgIGlm
ICggIWV4Y2x1c2lvbiB8fCByYyApCisgICAgeworICAgICAgICBwYWRkcl90
IGxlbmd0aCA9IGxpbWl0ICsgUEFHRV9TSVpFIC0gYmFzZTsKKyAgICAgICAg
dW5zaWduZWQgaW50IGJkZjsKKworICAgICAgICAvKiByZXNlcnZlIHIvdyB1
bml0eS1tYXBwZWQgcGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCisgICAg
ICAgIGZvciAoIGJkZiA9IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNfYmRm
X2VudHJpZXM7IGJkZisrICkKKyAgICAgICAgICAgIHJjID0gcmVzZXJ2ZV91
bml0eV9tYXBfZm9yX2RldmljZShzZWcsIGJkZiwgYmFzZSwgbGVuZ3RoLCBp
dywgaXIpOworICAgIH0KKwogICAgIHJldHVybiByYzsKIH0KIAotc3RhdGlj
IGludCBfX2luaXQgcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9kZXZp
Y2UoCi0gICAgdTE2IGJkZiwgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25l
ZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5p
dCByZWdpc3Rlcl9yYW5nZV9mb3JfZGV2aWNlKAorICAgIHVuc2lnbmVkIGlu
dCBiZGYsIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwKKyAgICBib29s
IGl3LCBib29sIGlyLCBib29sIGV4Y2x1c2lvbikKIHsKICAgICBpbnQgc2Vn
ID0gMDsgLyogWFhYICovCiAgICAgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2
cnNfbWFwcGluZ3MgPSBnZXRfaXZyc19tYXBwaW5ncyhzZWcpOwotICAgIHVu
c2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsKICAg
ICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdTsKICAgICB1MTYgcmVxOwogICAg
IGludCByYyA9IDA7CkBAIC0yNDgsMjcgKzI0NSwxOSBAQCBzdGF0aWMgaW50
IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgcmVxID0gaXZy
c19tYXBwaW5nc1tiZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7CiAKICAgICAvKiBu
b3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2Ut
YWxpZ25lZCAqLwotICAgIHJhbmdlX3RvcCA9IGxpbWl0ICsgUEFHRV9TSVpF
OwotICAgIGlvbW11X3RvcCA9IG1heF9wYWdlICogUEFHRV9TSVpFOwotICAg
IGlmICggYmFzZSA8IGlvbW11X3RvcCApCi0gICAgewotICAgICAgICBpZiAo
IHJhbmdlX3RvcCA+IGlvbW11X3RvcCApCi0gICAgICAgICAgICByYW5nZV90
b3AgPSBpb21tdV90b3A7Ci0gICAgICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAt
IGJhc2U7CisgICAgaWYgKCBleGNsdXNpb24gKQorICAgICAgICByYyA9IHJl
c2VydmVfaW9tbXVfZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1p
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmYWxzZSAvKiBhbGwgKi8pOworICAgIGlmICggIWV4Y2x1c2lvbiB8fCBy
YyApCisgICAgeworICAgICAgICBwYWRkcl90IGxlbmd0aCA9IGxpbWl0ICsg
UEFHRV9TSVpFIC0gYmFzZTsKKwogICAgICAgICAvKiByZXNlcnZlIHVuaXR5
LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZSAqLwotICAgICAgICAv
KiBub3RlOiB0aGVzZSBlbnRyaWVzIGFyZSBwYXJ0IG9mIHRoZSBleGNsdXNp
b24gcmFuZ2UgKi8KICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9m
b3JfZGV2aWNlKHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcikgPzoK
ICAgICAgICAgICAgICByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKHNl
ZywgcmVxLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7Ci0KLSAgICAgICAgLyog
cHVzaCAnYmFzZScganVzdCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRkcmVzcyBz
cGFjZSAqLwotICAgICAgICBiYXNlID0gaW9tbXVfdG9wOwogICAgIH0KLQot
ICAgIC8qIHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5n
cyBmb3IgZGV2aWNlICovCi0gICAgaWYgKCAhcmMgJiYgbGltaXQgPj0gaW9t
bXVfdG9wICApCisgICAgZWxzZQogICAgIHsKLSAgICAgICAgcmMgPSByZXNl
cnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmFsc2UgLyogYWxsICovLCBpdywgaXIpOwogICAgICAgICBpdnJzX21hcHBp
bmdzW2JkZl0uZHRlX2FsbG93X2V4Y2x1c2lvbiA9IHRydWU7CiAgICAgICAg
IGl2cnNfbWFwcGluZ3NbcmVxXS5kdGVfYWxsb3dfZXhjbHVzaW9uID0gdHJ1
ZTsKICAgICB9CkBAIC0yNzYsNTMgKzI2NSw0MiBAQCBzdGF0aWMgaW50IF9f
aW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFuCiAgICAgcmV0dXJuIHJjOwog
fQogCi1zdGF0aWMgaW50IF9faW5pdCByZWdpc3Rlcl9leGNsdXNpb25fcmFu
Z2VfZm9yX2lvbW11X2RldmljZXMoCi0gICAgc3RydWN0IGFtZF9pb21tdSAq
aW9tbXUsCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNpZ25lZCBsb25n
IGxpbWl0LCB1OCBpdywgdTggaXIpCitzdGF0aWMgaW50IF9faW5pdCByZWdp
c3Rlcl9yYW5nZV9mb3JfaW9tbXVfZGV2aWNlcygKKyAgICBzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdSwgcGFkZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LAor
ICAgIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewotICAg
IHVuc2lnbmVkIGxvbmcgcmFuZ2VfdG9wLCBpb21tdV90b3AsIGxlbmd0aDsK
KyAgICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRv
IGJlIHBhZ2UtYWxpZ25lZCAqLworICAgIHBhZGRyX3QgbGVuZ3RoID0gbGlt
aXQgKyBQQUdFX1NJWkUgLSBiYXNlOwogICAgIHVuc2lnbmVkIGludCBiZGY7
CiAgICAgdTE2IHJlcTsKLSAgICBpbnQgcmMgPSAwOworICAgIGludCByYzsK
IAotICAgIC8qIGlzIHBhcnQgb2YgZXhjbHVzaW9uIHJhbmdlIGluc2lkZSBv
ZiBJT01NVSB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2U/ICovCi0gICAgLyogbm90
ZTogJ2xpbWl0JyBwYXJhbWV0ZXIgaXMgYXNzdW1lZCB0byBiZSBwYWdlLWFs
aWduZWQgKi8KLSAgICByYW5nZV90b3AgPSBsaW1pdCArIFBBR0VfU0laRTsK
LSAgICBpb21tdV90b3AgPSBtYXhfcGFnZSAqIFBBR0VfU0laRTsKLSAgICBp
ZiAoIGJhc2UgPCBpb21tdV90b3AgKQotICAgIHsKLSAgICAgICAgaWYgKCBy
YW5nZV90b3AgPiBpb21tdV90b3AgKQotICAgICAgICAgICAgcmFuZ2VfdG9w
ID0gaW9tbXVfdG9wOwotICAgICAgICBsZW5ndGggPSByYW5nZV90b3AgLSBi
YXNlOwotICAgICAgICAvKiByZXNlcnZlIHIvdyB1bml0eS1tYXBwZWQgcGFn
ZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCi0gICAgICAgIC8qIG5vdGU6IHRo
ZXNlIGVudHJpZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAq
LwotICAgICAgICBmb3IgKCBiZGYgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19i
ZGZfZW50cmllczsgYmRmKysgKQotICAgICAgICB7Ci0gICAgICAgICAgICBp
ZiAoIGlvbW11ID09IGZpbmRfaW9tbXVfZm9yX2RldmljZShpb21tdS0+c2Vn
LCBiZGYpICkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXEg
PSBnZXRfaXZyc19tYXBwaW5ncyhpb21tdS0+c2VnKVtiZGZdLmR0ZV9yZXF1
ZXN0b3JfaWQ7Ci0gICAgICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5
X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZiwgYmFzZSwgbGVuZ3Ro
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpdywgaXIpID86Ci0gICAgICAgICAgICAgICAgICAgICByZXNl
cnZlX3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFz
ZSwgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpdywgaXIpOwotICAgICAgICAgICAgfQotICAg
ICAgICB9Ci0KLSAgICAgICAgLyogcHVzaCAnYmFzZScganVzdCBvdXRzaWRl
IG9mIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSAqLwotICAgICAgICBiYXNlID0g
aW9tbXVfdG9wOworICAgIGlmICggZXhjbHVzaW9uICkKKyAgICB7CisgICAg
ICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUs
IGJhc2UsIGxpbWl0LCB0cnVlIC8qIGFsbCAqLyk7CisgICAgICAgIGlmICgg
IXJjICkKKyAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8q
IHJlZ2lzdGVyIElPTU1VIGV4Y2x1c2lvbiByYW5nZSBzZXR0aW5ncyAqLwot
ICAgIGlmICggIXJjICYmIGxpbWl0ID49IGlvbW11X3RvcCApCi0gICAgICAg
IHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNpb25fcmFuZ2UoaW9tbXUsIGJh
c2UsIGxpbWl0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRydWUgLyogYWxsICovLCBpdywgaXIpOworICAgIC8qIHJl
c2VydmUgdW5pdHktbWFwcGVkIHBhZ2UgZW50cmllcyBmb3IgZGV2aWNlcyAq
LworICAgIGZvciAoIGJkZiA9IHJjID0gMDsgIXJjICYmIGJkZiA8IGl2cnNf
YmRmX2VudHJpZXM7IGJkZisrICkKKyAgICB7CisgICAgICAgIGlmICggaW9t
bXUgIT0gZmluZF9pb21tdV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikg
KQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgcmVxID0gZ2V0
X2l2cnNfbWFwcGluZ3MoaW9tbXUtPnNlZylbYmRmXS5kdGVfcmVxdWVzdG9y
X2lkOworICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZp
Y2UoaW9tbXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIpID86Cisg
ICAgICAgICAgICAgcmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShpb21t
dS0+c2VnLCByZXEsIGJhc2UsIGxlbmd0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcik7CisgICAgfQogCiAg
ICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9p
dm1kX2RldmljZV9zZWxlY3QoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZy
c19tZW1vcnkgKml2bWRfYmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNl
LCB1bnNpZ25lZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFk
ZHJfdCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBi
b29sIGV4Y2x1c2lvbikKIHsKICAgICB1MTYgYmRmOwogCkBAIC0zMzMsMTIg
KzMxMSwxMiBAQCBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2Rldmlj
ZV9zZWxlCiAgICAgICAgIHJldHVybiAtRU5PREVWOwogICAgIH0KIAotICAg
IHJldHVybiByZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZShi
ZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgIHJldHVybiByZWdpc3Rl
cl9yYW5nZV9mb3JfZGV2aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpciwg
ZXhjbHVzaW9uKTsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZt
ZF9kZXZpY2VfcmFuZ2UoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19t
ZW1vcnkgKml2bWRfYmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1
bnNpZ25lZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJf
dCBiYXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29s
IGV4Y2x1c2lvbikKIHsKICAgICB1bnNpZ25lZCBpbnQgZmlyc3RfYmRmLCBs
YXN0X2JkZiwgYmRmOwogICAgIGludCBlcnJvcjsKQEAgLTM2MCwxNSArMzM4
LDE1IEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3Jh
bmcKICAgICB9CiAKICAgICBmb3IgKCBiZGYgPSBmaXJzdF9iZGYsIGVycm9y
ID0gMDsgKGJkZiA8PSBsYXN0X2JkZikgJiYgIWVycm9yOyBiZGYrKyApCi0g
ICAgICAgIGVycm9yID0gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9k
ZXZpY2UoCi0gICAgICAgICAgICBiZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIp
OworICAgICAgICBlcnJvciA9IHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2Uo
CisgICAgICAgICAgICBiZGYsIGJhc2UsIGxpbWl0LCBpdywgaXIsIGV4Y2x1
c2lvbik7CiAKICAgICByZXR1cm4gZXJyb3I7CiB9CiAKIHN0YXRpYyBpbnQg
X19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX2lvbW11KAogICAgIGNvbnN0IHN0
cnVjdCBhY3BpX2l2cnNfbWVtb3J5ICppdm1kX2Jsb2NrLAotICAgIHVuc2ln
bmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBsaW1pdCwgdTggaXcsIHU4
IGlyKQorICAgIHBhZGRyX3QgYmFzZSwgcGFkZHJfdCBsaW1pdCwgYm9vbCBp
dywgYm9vbCBpciwgYm9vbCBleGNsdXNpb24pCiB7CiAgICAgaW50IHNlZyA9
IDA7IC8qIFhYWCAqLwogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11OwpA
QCAtMzgzLDE0ICszNjEsMTQgQEAgc3RhdGljIGludCBfX2luaXQgcGFyc2Vf
aXZtZF9kZXZpY2VfaW9tbQogICAgICAgICByZXR1cm4gLUVOT0RFVjsKICAg
ICB9CiAKLSAgICByZXR1cm4gcmVnaXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zv
cl9pb21tdV9kZXZpY2VzKAotICAgICAgICBpb21tdSwgYmFzZSwgbGltaXQs
IGl3LCBpcik7CisgICAgcmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21t
dV9kZXZpY2VzKAorICAgICAgICBpb21tdSwgYmFzZSwgbGltaXQsIGl3LCBp
ciwgZXhjbHVzaW9uKTsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2Vf
aXZtZF9ibG9jayhjb25zdCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZt
ZF9ibG9jaykKIHsKICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0X2FkZHIsIG1l
bV9sZW5ndGgsIGJhc2UsIGxpbWl0OwotICAgIHU4IGl3LCBpcjsKKyAgICBi
b29sIGl3ID0gdHJ1ZSwgaXIgPSB0cnVlLCBleGNsdXNpb24gPSBmYWxzZTsK
IAogICAgIGlmICggaXZtZF9ibG9jay0+aGVhZGVyLmxlbmd0aCA8IHNpemVv
ZigqaXZtZF9ibG9jaykgKQogICAgIHsKQEAgLTQwNywxMyArMzg1LDExIEBA
IHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfYmxvY2soY29uc3QKICAg
ICAgICAgICAgICAgICAgICAgaXZtZF9ibG9jay0+aGVhZGVyLnR5cGUsIHN0
YXJ0X2FkZHIsIG1lbV9sZW5ndGgpOwogCiAgICAgaWYgKCBpdm1kX2Jsb2Nr
LT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfRVhDTFVTSU9OX1JBTkdFICkK
LSAgICAgICAgaXcgPSBpciA9IElPTU1VX0NPTlRST0xfRU5BQkxFRDsKKyAg
ICAgICAgZXhjbHVzaW9uID0gdHJ1ZTsKICAgICBlbHNlIGlmICggaXZtZF9i
bG9jay0+aGVhZGVyLmZsYWdzICYgQUNQSV9JVk1EX1VOSVRZICkKICAgICB7
Ci0gICAgICAgIGl3ID0gaXZtZF9ibG9jay0+aGVhZGVyLmZsYWdzICYgQUNQ
SV9JVk1EX1JFQUQgPwotICAgICAgICAgICAgSU9NTVVfQ09OVFJPTF9FTkFC
TEVEIDogSU9NTVVfQ09OVFJPTF9ESVNBQkxFRDsKLSAgICAgICAgaXIgPSBp
dm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEUgPwot
ICAgICAgICAgICAgSU9NTVVfQ09OVFJPTF9FTkFCTEVEIDogSU9NTVVfQ09O
VFJPTF9ESVNBQkxFRDsKKyAgICAgICAgaXcgPSBpdm1kX2Jsb2NrLT5oZWFk
ZXIuZmxhZ3MgJiBBQ1BJX0lWTURfUkVBRDsKKyAgICAgICAgaXIgPSBpdm1k
X2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfV1JJVEU7CiAgICAg
fQogICAgIGVsc2UKICAgICB7CkBAIC00MjQsMjAgKzQwMCwyMCBAQCBzdGF0
aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2Jsb2NrKGNvbnN0CiAgICAgc3dp
dGNoKCBpdm1kX2Jsb2NrLT5oZWFkZXIudHlwZSApCiAgICAgewogICAgIGNh
c2UgQUNQSV9JVlJTX1RZUEVfTUVNT1JZX0FMTDoKLSAgICAgICAgcmV0dXJu
IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfYWxsX2RldmljZXMoCi0g
ICAgICAgICAgICBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0
dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygKKyAgICAgICAg
ICAgIGJhc2UsIGxpbWl0LCBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAgICBj
YXNlIEFDUElfSVZSU19UWVBFX01FTU9SWV9PTkU6Ci0gICAgICAgIHJldHVy
biBwYXJzZV9pdm1kX2RldmljZV9zZWxlY3QoaXZtZF9ibG9jaywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBsaW1p
dCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNl
X3NlbGVjdChpdm1kX2Jsb2NrLCBiYXNlLCBsaW1pdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lv
bik7CiAKICAgICBjYXNlIEFDUElfSVZSU19UWVBFX01FTU9SWV9SQU5HRToK
LSAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX3JhbmdlKGl2bWRf
YmxvY2ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNl
X2l2bWRfZGV2aWNlX3JhbmdlKGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGly
LCBleGNsdXNpb24pOwogCiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9NRU1P
UllfSU9NTVU6Ci0gICAgICAgIHJldHVybiBwYXJzZV9pdm1kX2RldmljZV9p
b21tdShpdm1kX2Jsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYmFzZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIHJl
dHVybiBwYXJzZV9pdm1kX2RldmljZV9pb21tdShpdm1kX2Jsb2NrLCBiYXNl
LCBsaW1pdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGRlZmF1bHQ6CiAgICAg
ICAgIEFNRF9JT01NVV9ERUJVRygiSVZNRCBFcnJvcjogSW52YWxpZCBCbG9j
ayBUeXBlIVxuIik7Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9wY2lfYW1kX2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYwpAQCAtMjM0LDYgKzIzNCw4IEBAIHN0
YXRpYyBpbnQgX19tdXN0X2NoZWNrIGFsbG9jYXRlX2RvbWFpbl8KICAgICBy
ZXR1cm4gcmM7CiB9CiAKK2ludCBfX3JlYWRfbW9zdGx5IGFtZF9pb21tdV9t
aW5fcGFnaW5nX21vZGUgPSAxOworCiBzdGF0aWMgaW50IGFtZF9pb21tdV9k
b21haW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBk
b21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwpAQCAtMjQ1LDExICsy
NDcsMTMgQEAgc3RhdGljIGludCBhbWRfaW9tbXVfZG9tYWluX2luaXQoc3Ry
dWN0CiAgICAgICogLSBIVk0gY291bGQgaW4gcHJpbmNpcGxlIHVzZSAzIG9y
IDQgZGVwZW5kaW5nIG9uIGhvdyBtdWNoIGd1ZXN0CiAgICAgICogICBwaHlz
aWNhbCBhZGRyZXNzIHNwYWNlIHdlIGdpdmUgaXQsIGJ1dCB0aGlzIGlzbid0
IGtub3duIHlldCBzbyB1c2UgNAogICAgICAqICAgdW5pbGF0ZXJhbGx5Lgor
ICAgICAqIC0gVW5pdHkgbWFwcyBtYXkgcmVxdWlyZSBhbiBldmVuIGhpZ2hl
ciBudW1iZXIuCiAgICAgICovCi0gICAgaGQtPmFyY2guYW1kLnBhZ2luZ19t
b2RlID0gYW1kX2lvbW11X2dldF9wYWdpbmdfbW9kZSgKLSAgICAgICAgaXNf
aHZtX2RvbWFpbihkKQotICAgICAgICA/IDF1bCA8PCAoREVGQVVMVF9ET01B
SU5fQUREUkVTU19XSURUSCAtIFBBR0VfU0hJRlQpCi0gICAgICAgIDogZ2V0
X3VwcGVyX21mbl9ib3VuZCgpICsgMSk7CisgICAgaGQtPmFyY2guYW1kLnBh
Z2luZ19tb2RlID0gbWF4KGFtZF9pb21tdV9nZXRfcGFnaW5nX21vZGUoCisg
ICAgICAgICAgICBpc19odm1fZG9tYWluKGQpCisgICAgICAgICAgICA/IDF1
bCA8PCAoREVGQVVMVF9ET01BSU5fQUREUkVTU19XSURUSCAtIFBBR0VfU0hJ
RlQpCisgICAgICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91bmQoKSArIDEp
LAorICAgICAgICBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2RlKTsKIAogICAg
IHJldHVybiAwOwogfQo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtODExLDcgKzgx
MSw3IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRl
cik7IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2Vu
dHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5V
TEwpOwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFw
Mm1faXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAg
ICAgICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3No
YXJlZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4o
bWZuX3gobWZuKSArIGksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAg
fQogICAgIH0KQEAgLTk0MSwxMyArOTQxLDEzIEBAIGd1ZXN0X3BoeXNtYXBf
YWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAg
ICAgICAgICAgIEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAg
ICB9Ci0gICAgICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNf
Zm9yZWlnbihvdCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90
KSApCiAgICAgICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRu
J3QgYmUgdW5tYXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAq
LworICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFu
dC9mb3JlaWduIHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2Ny
YXNoKGQpOwogICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAg
ICAgICAgCi0gICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAg
ICAgIHJldHVybiAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBp
ZiAoIHAybV9pc19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAg
ICAgICAgewpAQCAtMTA0MSw4ICsxMDQxLDcgQEAgaW50IHAybV9jaGFuZ2Vf
dHlwZV9vbmUoc3RydWN0IGRvbWFpbiAqZAogICAgIHN0cnVjdCBwMm1fZG9t
YWluICpwMm0gPSBwMm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgaW50IHJjOwog
Ci0gICAgQlVHX09OKHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lzX2dyYW50
KG50KSk7Ci0gICAgQlVHX09OKHAybV9pc19mb3JlaWduKG90KSB8fCBwMm1f
aXNfZm9yZWlnbihudCkpOworICAgIEJVR19PTihwMm1faXNfc3BlY2lhbChv
dCkgfHwgcDJtX2lzX3NwZWNpYWwobnQpKTsKIAogICAgIGdmbl9sb2NrKHAy
bSwgZ2ZuLCAwKTsKIApAQCAtMTI4OSwxMSArMTI4OCwxMSBAQCBzdGF0aWMg
aW50IHNldF90eXBlZF9wMm1fZW50cnkoc3RydWN0IGRvCiAgICAgICAgIGdm
bl91bmxvY2socDJtLCBnZm4sIG9yZGVyKTsKICAgICAgICAgcmV0dXJuIGN1
cl9vcmRlciArIDE7CiAgICAgfQotICAgIGlmICggcDJtX2lzX2dyYW50KG90
KSB8fCBwMm1faXNfZm9yZWlnbihvdCkgKQorICAgIGlmICggcDJtX2lzX3Nw
ZWNpYWwob3QpICkKICAgICB7CiAgICAgICAgIGdmbl91bmxvY2socDJtLCBn
Zm4sIG9yZGVyKTsKICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwotICAgICAg
ICByZXR1cm4gLUVOT0VOVDsKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKICAg
ICB9CiAgICAgZWxzZSBpZiAoIHAybV9pc19yYW0ob3QpICkKICAgICB7Ci0t
LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1
ZGUvYXNtLXg4Ni9wMm0uaApAQCAtMTQ5LDYgKzE0OSwxMCBAQCB0eXBlZGVm
IHVuc2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8IHAybV90b19tYXNrKHAybV9yYW1fbG9nZGlydHkpICkK
ICNkZWZpbmUgUDJNX1NIQVJFRF9UWVBFUyAgIChwMm1fdG9fbWFzayhwMm1f
cmFtX3NoYXJlZCkpCiAKKy8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQg
dXAgdmlhIHNwZWNpYWwgYWNjZXNzb3JzLiAqLworI2RlZmluZSBQMk1fU1BF
Q0lBTF9UWVBFUyAoUDJNX0dSQU5UX1RZUEVTIHwgXAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkK
KwogLyogVmFsaWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQg
d2l0aCBhICh2YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9N
Rk5fVFlQRVMgKFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhw
Mm1fbW1pb19kaXJlY3QpIFwKQEAgLTE3Nyw2ICsxODEsNyBAQCB0eXBlZGVm
IHVuc2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICNkZWZpbmUgcDJtX2lzX3Bh
Z2VkKF90KSAgICAocDJtX3RvX21hc2soX3QpICYgUDJNX1BBR0VEX1RZUEVT
KQogI2RlZmluZSBwMm1faXNfc2hhcmFibGUoX3QpIChwMm1fdG9fbWFzayhf
dCkgJiBQMk1fU0hBUkFCTEVfVFlQRVMpCiAjZGVmaW5lIHAybV9pc19zaGFy
ZWQoX3QpICAgKHAybV90b19tYXNrKF90KSAmIFAyTV9TSEFSRURfVFlQRVMp
CisjZGVmaW5lIHAybV9pc19zcGVjaWFsKF90KSAgKHAybV90b19tYXNrKF90
KSAmIFAyTV9TUEVDSUFMX1RZUEVTKQogI2RlZmluZSBwMm1faXNfYnJva2Vu
KF90KSAgIChwMm1fdG9fbWFzayhfdCkgJiBQMk1fQlJPS0VOX1RZUEVTKQog
I2RlZmluZSBwMm1faXNfZm9yZWlnbihfdCkgIChwMm1fdG9fbWFzayhfdCkg
JiBwMm1fdG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pKQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.15-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.15-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3Ay
bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtNzk5LDcgKzc5
OSw4IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmN1cl9vcmRlciwgTlVMTCk7CiAKICAgICAgICAgaWYgKCBwMm1faXNfdmFs
aWQodCkgJiYKLSAgICAgICAgICAgICAoIW1mbl92YWxpZChtZm4pIHx8ICFt
Zm5fZXEobWZuX2FkZChtZm4sIGkpLCBtZm5fcmV0dXJuKSkgKQorICAgICAg
ICAgICAgICghbWZuX3ZhbGlkKG1mbikgfHwgdCA9PSBwMm1fbW1pb19kaXJl
Y3QgfHwKKyAgICAgICAgICAgICAgIW1mbl9lcShtZm5fYWRkKG1mbiwgaSks
IG1mbl9yZXR1cm4pKSApCiAgICAgICAgICAgICByZXR1cm4gLUVJTFNFUTsK
IAogICAgICAgICBpICs9ICgxVUwgPDwgY3VyX29yZGVyKSAtCkBAIC04OTks
NyArOTAwLDcgQEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRv
bWFpbiAqZAogICAgIGlmICggcDJtX2lzX2ZvcmVpZ24odCkgKQogICAgICAg
ICByZXR1cm4gLUVJTlZBTDsKIAotICAgIGlmICggIW1mbl92YWxpZChtZm4p
ICkKKyAgICBpZiAoICFtZm5fdmFsaWQobWZuKSB8fCB0ID09IHAybV9tbWlv
X2RpcmVjdCApCiAgICAgewogICAgICAgICBBU1NFUlRfVU5SRUFDSEFCTEUo
KTsKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CkBAIC05NDMsNyArOTQ0LDcg
QEAgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAqZAog
ICAgICAgICB9CiAgICAgICAgIGlmICggcDJtX2lzX3NwZWNpYWwob3QpICkK
ICAgICAgICAgewotICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFw
cGluZyBncmFudC9mb3JlaWduIHRoaXMgd2F5LiAqLworICAgICAgICAgICAg
LyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9mb3JlaWduL2RpcmVj
dC1NTUlPIHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2NyYXNo
KGQpOwogICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAgICAg
ICAgCkBAIC0xMzk5LDggKzE0MDAsOCBAQCBpbnQgc2V0X2lkZW50aXR5X3Ay
bV9lbnRyeShzdHJ1Y3QgZG9tYWluCiAgKiAgICBvcmRlcisxICBmb3IgY2Fs
bGVyIHRvIHJldHJ5IHdpdGggb3JkZXIgKGd1YXJhbnRlZWQgc21hbGxlciB0
aGFuCiAgKiAgICAgICAgICAgICB0aGUgb3JkZXIgdmFsdWUgcGFzc2VkIGlu
KQogICovCi1pbnQgY2xlYXJfbW1pb19wMm1fZW50cnkoc3RydWN0IGRvbWFp
biAqZCwgdW5zaWduZWQgbG9uZyBnZm5fbCwgbWZuX3QgbWZuLAotICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBvcmRlcikKK3N0YXRp
YyBpbnQgY2xlYXJfbW1pb19wMm1fZW50cnkoc3RydWN0IGRvbWFpbiAqZCwg
dW5zaWduZWQgbG9uZyBnZm5fbCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbWZuX3QgbWZuLCB1bnNpZ25lZCBpbnQgb3JkZXIpCiB7CiAg
ICAgaW50IHJjID0gLUVJTlZBTDsKICAgICBnZm5fdCBnZm4gPSBfZ2ZuKGdm
bl9sKTsKQEAgLTI3MzEsNyArMjczMiw5IEBAIGludCB4ZW5tZW1fYWRkX3Rv
X3BoeXNtYXBfb25lKAogCiAgICAgLyogUmVtb3ZlIHByZXZpb3VzbHkgbWFw
cGVkIHBhZ2UgaWYgaXQgd2FzIHByZXNlbnQuICovCiAgICAgcHJldl9tZm4g
PSBnZXRfZ2ZuKGQsIGdmbl94KGdwZm4pLCAmcDJtdCk7Ci0gICAgaWYgKCBt
Zm5fdmFsaWQocHJldl9tZm4pICkKKyAgICBpZiAoIHAybXQgPT0gcDJtX21t
aW9fZGlyZWN0ICkKKyAgICAgICAgcmMgPSAtRVBFUk07CisgICAgZWxzZSBp
ZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQogICAgIHsKICAgICAgICAgaWYg
KCBpc19zcGVjaWFsX3BhZ2UobWZuX3RvX3BhZ2UocHJldl9tZm4pKSApCiAg
ICAgICAgICAgICAvKiBTcGVjaWFsIHBhZ2VzIGFyZSBzaW1wbHkgdW5ob29r
ZWQgZnJvbSB0aGlzIHBoeXMgc2xvdC4gKi8KLS0tIGEveGVuL2FyY2gveDg2
L21tL3AybS1wb2QuYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLXBvZC5j
CkBAIC0xMjk5LDE3ICsxMjk5LDE3IEBAIGd1ZXN0X3BoeXNtYXBfbWFya19w
b3B1bGF0ZV9vbl9kZW1hbmQoc3QKIAogICAgICAgICBwMm0tPmdldF9lbnRy
eShwMm0sIGdmbl9hZGQoZ2ZuLCBpKSwgJm90LCAmYSwgMCwgJmN1cl9vcmRl
ciwgTlVMTCk7CiAgICAgICAgIG4gPSAxVUwgPDwgbWluKG9yZGVyLCBjdXJf
b3JkZXIpOwotICAgICAgICBpZiAoIHAybV9pc19yYW0ob3QpICkKKyAgICAg
ICAgaWYgKCBvdCA9PSBwMm1fcG9wdWxhdGVfb25fZGVtYW5kICkKKyAgICAg
ICAgeworICAgICAgICAgICAgLyogQ291bnQgaG93IG1hbnkgUG9EIGVudHJp
ZXMgd2UnbGwgYmUgcmVwbGFjaW5nIGlmIHN1Y2Nlc3NmdWwgKi8KKyAgICAg
ICAgICAgIHBvZF9jb3VudCArPSBuOworICAgICAgICB9CisgICAgICAgIGVs
c2UgaWYgKCBvdCAhPSBwMm1faW52YWxpZCAmJiBvdCAhPSBwMm1fbW1pb19k
bSApCiAgICAgICAgIHsKICAgICAgICAgICAgIFAyTV9ERUJVRygiZ2ZuX3Rv
X21mbiByZXR1cm5lZCB0eXBlICVkIVxuIiwgb3QpOwogICAgICAgICAgICAg
cmMgPSAtRUJVU1k7CiAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAg
fQotICAgICAgICBlbHNlIGlmICggb3QgPT0gcDJtX3BvcHVsYXRlX29uX2Rl
bWFuZCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8qIENvdW50IGhvdyBt
YW4gUG9EIGVudHJpZXMgd2UnbGwgYmUgcmVwbGFjaW5nIGlmIHN1Y2Nlc3Nm
dWwgKi8KLSAgICAgICAgICAgIHBvZF9jb3VudCArPSBuOwotICAgICAgICB9
CiAgICAgfQogCiAgICAgLyogTm93LCBhY3R1YWxseSBkbyB0aGUgdHdvLXdh
eSBtYXBwaW5nICovCi0tLSBhL3hlbi9jb21tb24vbWVtb3J5LmMKKysrIGIv
eGVuL2NvbW1vbi9tZW1vcnkuYwpAQCAtMzMwLDcgKzMzMCw3IEBAIGludCBn
dWVzdF9yZW1vdmVfcGFnZShzdHJ1Y3QgZG9tYWluICpkLAogICAgIH0KICAg
ICBpZiAoIHAybXQgPT0gcDJtX21taW9fZGlyZWN0ICkKICAgICB7Ci0gICAg
ICAgIHJjID0gY2xlYXJfbW1pb19wMm1fZW50cnkoZCwgZ21mbiwgbWZuLCBQ
QUdFX09SREVSXzRLKTsKKyAgICAgICAgcmMgPSAtRVBFUk07CiAgICAgICAg
IGdvdG8gb3V0X3B1dF9nZm47CiAgICAgfQogI2Vsc2UKQEAgLTE4NzUsNiAr
MTg3NSwxNSBAQCBpbnQgY2hlY2tfZ2V0X3BhZ2VfZnJvbV9nZm4oc3RydWN0
IGRvbWFpCiAgICAgICAgIHJldHVybiAtRUFHQUlOOwogICAgIH0KICNlbmRp
ZgorI2lmZGVmIENPTkZJR19YODYKKyAgICBpZiAoIHAybXQgPT0gcDJtX21t
aW9fZGlyZWN0ICkKKyAgICB7CisgICAgICAgIGlmICggcGFnZSApCisgICAg
ICAgICAgICBwdXRfcGFnZShwYWdlKTsKKworICAgICAgICByZXR1cm4gLUVQ
RVJNOworICAgIH0KKyNlbmRpZgogCiAgICAgaWYgKCAhcGFnZSApCiAgICAg
ICAgIHJldHVybiAtRUlOVkFMOwotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2
L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKQEAgLTE1
MSw3ICsxNTEsOCBAQCB0eXBlZGVmIHVuc2lnbmVkIGludCBwMm1fcXVlcnlf
dDsKIAogLyogVHlwZXMgZXN0YWJsaXNoZWQvY2xlYW5lZCB1cCB2aWEgc3Bl
Y2lhbCBhY2Nlc3NvcnMuICovCiAjZGVmaW5lIFAyTV9TUEVDSUFMX1RZUEVT
IChQMk1fR1JBTlRfVFlQRVMgfCBcCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICBwMm1fdG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWdu
KSB8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV90b19tYXNr
KHAybV9tbWlvX2RpcmVjdCkpCiAKIC8qIFZhbGlkIHR5cGVzIG5vdCBuZWNl
c3NhcmlseSBhc3NvY2lhdGVkIHdpdGggYSAodmFsaWQpIE1GTi4gKi8KICNk
ZWZpbmUgUDJNX0lOVkFMSURfTUZOX1RZUEVTIChQMk1fUE9EX1RZUEVTICAg
ICAgICAgICAgICAgICAgXApAQCAtNjY2LDggKzY2Nyw2IEBAIGludCBwMm1f
aXNfbG9nZGlydHlfcmFuZ2Uoc3RydWN0IHAybV9kb20KIC8qIFNldCBtbWlv
IGFkZHJlc3NlcyBpbiB0aGUgcDJtIHRhYmxlIChmb3IgcGFzcy10aHJvdWdo
KSAqLwogaW50IHNldF9tbWlvX3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluICpk
LCBnZm5fdCBnZm4sIG1mbl90IG1mbiwKICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IG9yZGVyKTsKLWludCBjbGVhcl9tbWlvX3AybV9l
bnRyeShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBsb25nIGdmbiwgbWZu
X3QgbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCBvcmRlcik7CiAKIC8qIFNldCBpZGVudGl0eSBhZGRyZXNzZXMgaW4gdGhl
IHAybSB0YWJsZSAoZm9yIHBhc3MtdGhyb3VnaCkgKi8KIGludCBzZXRfaWRl
bnRpdHlfcDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxv
bmcgZ2ZuLAo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-4.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-4.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBJT01NVTogZ2VuZXJhbGl6ZSBWVC1kJ3MgdHJhY2tpbmcgb2YgbWFwcGVk
IFJNUlIgcmVnaW9ucwoKSW4gb3JkZXIgdG8gcmUtdXNlIGl0IGVsc2V3aGVy
ZSwgbW92ZSB0aGUgbG9naWMgdG8gdmVuZG9yIGluZGVwZW5kZW50CmNvZGUg
YW5kIHN0cmlwIGl0IG9mIFJNUlIgc3BlY2lmaWNzLgoKTm90ZSB0aGF0IHRo
ZSBwcmlvciAibWFwIiBwYXJhbWV0ZXIgZ2V0cyBmb2xkZWQgaW50byB0aGUg
bmV3ICJwMm1hIiBvbmUKKHdoaWNoIEFNRCBJT01NVSBjb2RlIHdpbGwgd2Fu
dCB0byBtYWtlIHVzZSBvZiksIGFzc2lnbmluZyBhbHRlcm5hdGl2ZQptZWFu
aW5nICgidW5tYXAiKSB0byBwMm1fYWNjZXNzX3guIFByZXBhcmUgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpIGFuZApwMm1fZ2V0X2lvbW11X2ZsYWdzKCkg
Zm9yIGdldHRpbmcgcGFzc2VkIGFjY2VzcyB0eXBlcyBvdGhlciB0aGFuCnAy
bV9hY2Nlc3NfcncgKGluIHRoZSBsYXR0ZXIgY2FzZSBqdXN0IGZvciBwMm1f
bW1pb19kaXJlY3QgcmVxdWVzdHMpLgoKTm90ZSBhbHNvIHRoYXQsIHRvIGJl
IG9uIHRoZSBzYWZlIHNpZGUsIGFuIG92ZXJsYXAgY2hlY2sgZ2V0cyBhZGRl
ZCB0bwp0aGUgbWFpbiBsb29wIG9mIGlvbW11X2lkZW50aXR5X21hcHBpbmco
KS4KClRoaXMgaXMgcGFydCBvZiBYU0EtMzc4LgoKU2lnbmVkLW9mZi1ieTog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTog
UGF1bCBEdXJyYW50IDxwYXVsQHhlbi5vcmc+Ci0tLQpUQkQ6IEluIHRoaXMg
Y29udGV4dCAodGhlIGxhdGVzdCkgSSBxdWVzdGlvbiB3aGV0aGVyIGl0IGlz
IGEgZ29vZCBpZGVhCiAgICAgZm9yIGNsZWFyX2lkZW50aXR5X3AybV9lbnRy
eSgpIHRvIHJldHVybiBzdWNjZXNzIHdoZW4gaXQgZGlkbid0CiAgICAgY2xl
YXIgdGhlIGVudHJ5IGJlY2F1c2Ugb2YgbWlzbWF0Y2hpbmcgdHlwZSBvciBN
Rk4uClRCRDogUXVlc3Rpb24gaXMgd2hldGhlciBwMm1fZ2V0X2lvbW11X2Zs
YWdzKCkgc2hvdWxkIGFwcGx5IHRoZSBhY2Nlc3MKICAgICByZXN0cmljdGlv
biBpbiBhbGwgY2FzZXMsIG5vdCBqdXN0IGZvciBwMm1fbW1pb19kaXJlY3Qu
ClRCRDogTmVpdGhlciBwb3NzaWJsZSBwbGFjZW1lbnQgb2YgcDJtX2FjY2Vz
c19yeDJydyBhbmQgcDJtX2FjY2Vzc19uMnJ3eAogICAgIGluIHAybV9hY2Nl
c3NfdG9faW9tbXVfZmxhZ3MoKSBsb29rcyBlbnRpcmVseSBjb3JyZWN0L3Nl
bnNpYmxlLgotLS0Kdjk6IFJlLWJhc2UuCnY3OiBzL3VuaXR5X21hcC9pZGVu
dGl0eV9tYXAvZy4gUmUtYmFzZS4KdjY6IFJlLWJhc2UuCnY1OiBOZXcuCgot
LS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2
L21tL3AybS5jCkBAIC0xNDI3LDcgKzE0MjcsNyBAQCBpbnQgc2V0X2lkZW50
aXR5X3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluCiAgICAgICAgICAgICByZXR1
cm4gMDsKICAgICAgICAgcmV0dXJuIGlvbW11X2xlZ2FjeV9tYXAoZCwgX2Rm
bihnZm5fbCksIF9tZm4oZ2ZuX2wpLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAxdWwgPDwgUEFHRV9PUkRFUl80SywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgSU9NTVVGX3JlYWRhYmxlIHwgSU9NTVVG
X3dyaXRhYmxlKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cDJtX2FjY2Vzc190b19pb21tdV9mbGFncyhwMm1hKSk7CiAjaWZkZWYgQ09O
RklHX0hWTQogICAgIH0KIAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn
aC92dGQvaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92
dGQvaW9tbXUuYwpAQCAtNDUsMTIgKzQ1LDYgQEAKIC8qIGRvbV9pbyBpcyB1
c2VkIGFzIGEgc2VudGluZWwgZm9yIHF1YXJhbnRpbmVkIGRldmljZXMgKi8K
ICNkZWZpbmUgUVVBUkFOVElORV9TS0lQKGQpICgoZCkgPT0gZG9tX2lvICYm
ICFkb21faW9tbXUoZCktPmFyY2gudnRkLnBnZF9tYWRkcikKIAotc3RydWN0
IG1hcHBlZF9ybXJyIHsKLSAgICBzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7Ci0g
ICAgdTY0IGJhc2UsIGVuZDsKLSAgICB1bnNpZ25lZCBpbnQgY291bnQ7Ci19
OwotCiAvKiBQb3NzaWJsZSB1bmZpbHRlcmVkIExBUElDL01TSSBtZXNzYWdl
cyBmcm9tIHVudHJ1c3RlZCBzb3VyY2VzPyAqLwogYm9vbCBfX3JlYWRfbW9z
dGx5IHVudHJ1c3RlZF9tc2k7CiAKQEAgLTEzMDYsNyArMTMwMCw2IEBAIHN0
YXRpYyBpbnQgaW50ZWxfaW9tbXVfZG9tYWluX2luaXQoc3RydWMKICAgICBz
dHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21tdShkKTsKIAogICAg
IGhkLT5hcmNoLnZ0ZC5hZ2F3ID0gd2lkdGhfdG9fYWdhdyhERUZBVUxUX0RP
TUFJTl9BRERSRVNTX1dJRFRIKTsKLSAgICBJTklUX0xJU1RfSEVBRCgmaGQt
PmFyY2gudnRkLm1hcHBlZF9ybXJycyk7CiAKICAgICByZXR1cm4gMDsKIH0K
QEAgLTE3ODUsMTcgKzE3NzgsMTIgQEAgc3RhdGljIHZvaWQgaW9tbXVfY2xl
YXJfcm9vdF9wZ3RhYmxlKHN0cgogc3RhdGljIHZvaWQgaW9tbXVfZG9tYWlu
X3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAgc3RydWN0IGRv
bWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7Ci0gICAgc3RydWN0IG1h
cHBlZF9ybXJyICptcm1yciwgKnRtcDsKICAgICBjb25zdCBzdHJ1Y3QgYWNw
aV9kcmhkX3VuaXQgKmRyaGQ7CiAKICAgICBpZiAoIGxpc3RfZW1wdHkoJmFj
cGlfZHJoZF91bml0cykgKQogICAgICAgICByZXR1cm47CiAKLSAgICBsaXN0
X2Zvcl9lYWNoX2VudHJ5X3NhZmUgKCBtcm1yciwgdG1wLCAmaGQtPmFyY2gu
dnRkLm1hcHBlZF9ybXJycywgbGlzdCApCi0gICAgewotICAgICAgICBsaXN0
X2RlbCgmbXJtcnItPmxpc3QpOwotICAgICAgICB4ZnJlZShtcm1ycik7Ci0g
ICAgfQorICAgIGlvbW11X2lkZW50aXR5X21hcF90ZWFyZG93bihkKTsKIAog
ICAgIEFTU0VSVCghaGQtPmFyY2gudnRkLnBnZF9tYWRkcik7CiAKQEAgLTE5
NDMsNzQgKzE5MzEsNiBAQCBzdGF0aWMgaW50IF9faW5pdCB2dGRfZXB0X3Bh
Z2VfY29tcGF0aWJsCiAgICAgICAgICAgIChlcHRfaGFzXzFnYihlcHRfY2Fw
KSAmJiBvcHRfaGFwXzFnYikgPD0gY2FwX3Nwc18xZ2IodnRkX2NhcCk7CiB9
CiAKLXN0YXRpYyBpbnQgcm1ycl9pZGVudGl0eV9tYXBwaW5nKHN0cnVjdCBk
b21haW4gKmQsIGJvb2xfdCBtYXAsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgYWNwaV9ybXJyX3VuaXQgKnJtcnIs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1MzIgZmxhZykK
LXsKLSAgICB1bnNpZ25lZCBsb25nIGJhc2VfcGZuID0gcm1yci0+YmFzZV9h
ZGRyZXNzID4+IFBBR0VfU0hJRlRfNEs7Ci0gICAgdW5zaWduZWQgbG9uZyBl
bmRfcGZuID0gUEFHRV9BTElHTl80SyhybXJyLT5lbmRfYWRkcmVzcykgPj4g
UEFHRV9TSElGVF80SzsKLSAgICBzdHJ1Y3QgbWFwcGVkX3JtcnIgKm1ybXJy
OwotICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQp
OwotCi0gICAgQVNTRVJUKHBjaWRldnNfbG9ja2VkKCkpOwotICAgIEFTU0VS
VChybXJyLT5iYXNlX2FkZHJlc3MgPCBybXJyLT5lbmRfYWRkcmVzcyk7Ci0K
LSAgICAvKgotICAgICAqIE5vIG5lZWQgdG8gYWNxdWlyZSBoZC0+YXJjaC5t
YXBwaW5nX2xvY2s6IEJvdGggaW5zZXJ0aW9uIGFuZCByZW1vdmFsCi0gICAg
ICogZ2V0IGRvbmUgd2hpbGUgaG9sZGluZyBwY2lkZXZzX2xvY2suCi0gICAg
ICovCi0gICAgbGlzdF9mb3JfZWFjaF9lbnRyeSggbXJtcnIsICZoZC0+YXJj
aC52dGQubWFwcGVkX3JtcnJzLCBsaXN0ICkKLSAgICB7Ci0gICAgICAgIGlm
ICggbXJtcnItPmJhc2UgPT0gcm1yci0+YmFzZV9hZGRyZXNzICYmCi0gICAg
ICAgICAgICAgbXJtcnItPmVuZCA9PSBybXJyLT5lbmRfYWRkcmVzcyApCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIGludCByZXQgPSAwOwotCi0gICAgICAg
ICAgICBpZiAoIG1hcCApCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgKyttcm1yci0+Y291bnQ7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICggLS1tcm1yci0+
Y291bnQgKQotICAgICAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAgICAg
ICAgICB3aGlsZSAoIGJhc2VfcGZuIDwgZW5kX3BmbiApCi0gICAgICAgICAg
ICB7Ci0gICAgICAgICAgICAgICAgaWYgKCBjbGVhcl9pZGVudGl0eV9wMm1f
ZW50cnkoZCwgYmFzZV9wZm4pICkKLSAgICAgICAgICAgICAgICAgICAgcmV0
ID0gLUVOWElPOwotICAgICAgICAgICAgICAgIGJhc2VfcGZuKys7Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIGxpc3RfZGVsKCZtcm1yci0+bGlz
dCk7Ci0gICAgICAgICAgICB4ZnJlZShtcm1ycik7Ci0gICAgICAgICAgICBy
ZXR1cm4gcmV0OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKCAhbWFw
ICkKLSAgICAgICAgcmV0dXJuIC1FTk9FTlQ7Ci0KLSAgICB3aGlsZSAoIGJh
c2VfcGZuIDwgZW5kX3BmbiApCi0gICAgewotICAgICAgICBpbnQgZXJyID0g
c2V0X2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3BmbiwgcDJtX2FjY2Vz
c19ydywgZmxhZyk7Ci0KLSAgICAgICAgaWYgKCBlcnIgKQotICAgICAgICAg
ICAgcmV0dXJuIGVycjsKLSAgICAgICAgYmFzZV9wZm4rKzsKLSAgICB9Ci0K
LSAgICBtcm1yciA9IHhtYWxsb2Moc3RydWN0IG1hcHBlZF9ybXJyKTsKLSAg
ICBpZiAoICFtcm1yciApCi0gICAgICAgIHJldHVybiAtRU5PTUVNOwotICAg
IG1ybXJyLT5iYXNlID0gcm1yci0+YmFzZV9hZGRyZXNzOwotICAgIG1ybXJy
LT5lbmQgPSBybXJyLT5lbmRfYWRkcmVzczsKLSAgICBtcm1yci0+Y291bnQg
PSAxOwotICAgIGxpc3RfYWRkX3RhaWwoJm1ybXJyLT5saXN0LCAmaGQtPmFy
Y2gudnRkLm1hcHBlZF9ybXJycyk7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQog
c3RhdGljIGludCBpbnRlbF9pb21tdV9hZGRfZGV2aWNlKHU4IGRldmZuLCBz
dHJ1Y3QgcGNpX2RldiAqcGRldikKIHsKICAgICBzdHJ1Y3QgYWNwaV9ybXJy
X3VuaXQgKnJtcnI7CkBAIC0yMDQyLDcgKzE5NjIsOSBAQCBzdGF0aWMgaW50
IGludGVsX2lvbW11X2FkZF9kZXZpY2UodTggZGV2CiAgICAgICAgICAgICAg
KiBTaW5jZSBSTVJScyBhcmUgYWx3YXlzIHJlc2VydmVkIGluIHRoZSBlODIw
IG1hcCBmb3IgdGhlIGhhcmR3YXJlCiAgICAgICAgICAgICAgKiBkb21haW4s
IHRoZXJlIHNob3VsZG4ndCBiZSBhIGNvbmZsaWN0LgogICAgICAgICAgICAg
ICovCi0gICAgICAgICAgICByZXQgPSBybXJyX2lkZW50aXR5X21hcHBpbmco
cGRldi0+ZG9tYWluLCAxLCBybXJyLCAwKTsKKyAgICAgICAgICAgIHJldCA9
IGlvbW11X2lkZW50aXR5X21hcHBpbmcocGRldi0+ZG9tYWluLCBwMm1fYWNj
ZXNzX3J3LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBybXJyLT5iYXNlX2FkZHJlc3MsIHJtcnItPmVuZF9hZGRyZXNzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsK
ICAgICAgICAgICAgIGlmICggcmV0ICkKICAgICAgICAgICAgICAgICBkcHJp
bnRrKFhFTkxPR19FUlIgVlREUFJFRklYLCAiZCVkOiBSTVJSIG1hcHBpbmcg
ZmFpbGVkXG4iLAogICAgICAgICAgICAgICAgICAgICAgICAgcGRldi0+ZG9t
YWluLT5kb21haW5faWQpOwpAQCAtMjA4Nyw3ICsyMDA5LDggQEAgc3RhdGlj
IGludCBpbnRlbF9pb21tdV9yZW1vdmVfZGV2aWNlKHU4CiAgICAgICAgICAq
IEFueSBmbGFnIGlzIG5vdGhpbmcgdG8gY2xlYXIgdGhlc2UgbWFwcGluZ3Mg
YnV0IGhlcmUKICAgICAgICAgICogaXRzIGFsd2F5cyBzYWZlIGFuZCBzdHJp
Y3QgdG8gc2V0IDAuCiAgICAgICAgICAqLwotICAgICAgICBybXJyX2lkZW50
aXR5X21hcHBpbmcocGRldi0+ZG9tYWluLCAwLCBybXJyLCAwKTsKKyAgICAg
ICAgaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhwZGV2LT5kb21haW4sIHAybV9h
Y2Nlc3NfeCwgcm1yci0+YmFzZV9hZGRyZXNzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCAwKTsKICAgICB9
CiAKICAgICByZXR1cm4gZG9tYWluX2NvbnRleHRfdW5tYXAocGRldi0+ZG9t
YWluLCBkZXZmbiwgcGRldik7CkBAIC0yMjg2LDcgKzIyMDksOCBAQCBzdGF0
aWMgdm9pZCBfX2h3ZG9tX2luaXQgc2V0dXBfaHdkb21fcm1yCiAgICAgICAg
ICAqIGRvbWFpbiwgdGhlcmUgc2hvdWxkbid0IGJlIGEgY29uZmxpY3QuIFNv
IGl0cyBhbHdheXMgc2FmZSBhbmQKICAgICAgICAgICogc3RyaWN0IHRvIHNl
dCAwLgogICAgICAgICAgKi8KLSAgICAgICAgcmV0ID0gcm1ycl9pZGVudGl0
eV9tYXBwaW5nKGQsIDEsIHJtcnIsIDApOworICAgICAgICByZXQgPSBpb21t
dV9pZGVudGl0eV9tYXBwaW5nKGQsIHAybV9hY2Nlc3NfcncsIHJtcnItPmJh
c2VfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBybXJyLT5lbmRfYWRkcmVzcywgMCk7CiAgICAgICAgIGlmICggcmV0
ICkKICAgICAgICAgICAgIGRwcmludGsoWEVOTE9HX0VSUiBWVERQUkVGSVgs
CiAgICAgICAgICAgICAgICAgICAgICAiSU9NTVU6IG1hcHBpbmcgcmVzZXJ2
ZWQgcmVnaW9uIGZhaWxlZFxuIik7CkBAIC0yNDY4LDcgKzIzOTIsOSBAQCBz
dGF0aWMgaW50IHJlYXNzaWduX2RldmljZV9vd25lcnNoaXAoCiAgICAgICAg
ICAgICAgICAgICogQW55IFJNUlIgZmxhZyBpcyBhbHdheXMgaWdub3JlZCB3
aGVuIHJlbW92ZSBhIGRldmljZSwKICAgICAgICAgICAgICAgICAgKiBidXQg
aXRzIGFsd2F5cyBzYWZlIGFuZCBzdHJpY3QgdG8gc2V0IDAuCiAgICAgICAg
ICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgcmV0ID0gcm1ycl9pZGVu
dGl0eV9tYXBwaW5nKHNvdXJjZSwgMCwgcm1yciwgMCk7CisgICAgICAgICAg
ICAgICAgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhzb3VyY2UsIHAy
bV9hY2Nlc3NfeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJtcnItPmJhc2VfYWRkcmVzcywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmVuZF9h
ZGRyZXNzLCAwKTsKICAgICAgICAgICAgICAgICBpZiAoIHJldCAhPSAtRU5P
RU5UICkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKICAgICAg
ICAgICAgIH0KQEAgLTI1NjQsNyArMjQ5MCw4IEBAIHN0YXRpYyBpbnQgaW50
ZWxfaW9tbXVfYXNzaWduX2RldmljZSgKICAgICAgICAgICAgICBQQ0lfQlVT
KGJkZikgPT0gYnVzICYmCiAgICAgICAgICAgICAgUENJX0RFVkZOMihiZGYp
ID09IGRldmZuICkKICAgICAgICAgewotICAgICAgICAgICAgcmV0ID0gcm1y
cl9pZGVudGl0eV9tYXBwaW5nKGQsIDEsIHJtcnIsIGZsYWcpOworICAgICAg
ICAgICAgcmV0ID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhkLCBwMm1fYWNj
ZXNzX3J3LCBybXJyLT5iYXNlX2FkZHJlc3MsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJtcnItPmVuZF9hZGRyZXNzLCBm
bGFnKTsKICAgICAgICAgICAgIGlmICggcmV0ICkKICAgICAgICAgICAgIHsK
ICAgICAgICAgICAgICAgICBpbnQgcmM7Ci0tLSBhL3hlbi9kcml2ZXJzL3Bh
c3N0aHJvdWdoL3g4Ni9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL3g4Ni9pb21tdS5jCkBAIC0xNDQsNiArMTQ0LDcgQEAgaW50IGFy
Y2hfaW9tbXVfZG9tYWluX2luaXQoc3RydWN0IGRvbWFpbgogCiAgICAgSU5J
VF9QQUdFX0xJU1RfSEVBRCgmaGQtPmFyY2gucGd0YWJsZXMubGlzdCk7CiAg
ICAgc3Bpbl9sb2NrX2luaXQoJmhkLT5hcmNoLnBndGFibGVzLmxvY2spOwor
ICAgIElOSVRfTElTVF9IRUFEKCZoZC0+YXJjaC5pZGVudGl0eV9tYXBzKTsK
IAogICAgIHJldHVybiAwOwogfQpAQCAtMTU5LDYgKzE2MCw5OSBAQCB2b2lk
IGFyY2hfaW9tbXVfZG9tYWluX2Rlc3Ryb3koc3RydWN0IGRvCiAgICAgICAg
ICAgIHBhZ2VfbGlzdF9lbXB0eSgmZG9tX2lvbW11KGQpLT5hcmNoLnBndGFi
bGVzLmxpc3QpKTsKIH0KIAorc3RydWN0IGlkZW50aXR5X21hcCB7CisgICAg
c3RydWN0IGxpc3RfaGVhZCBsaXN0OworICAgIHBhZGRyX3QgYmFzZSwgZW5k
OworICAgIHAybV9hY2Nlc3NfdCBhY2Nlc3M7CisgICAgdW5zaWduZWQgaW50
IGNvdW50OworfTsKKworaW50IGlvbW11X2lkZW50aXR5X21hcHBpbmcoc3Ry
dWN0IGRvbWFpbiAqZCwgcDJtX2FjY2Vzc190IHAybWEsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgZW5kLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGZsYWcp
Cit7CisgICAgdW5zaWduZWQgbG9uZyBiYXNlX3BmbiA9IGJhc2UgPj4gUEFH
RV9TSElGVF80SzsKKyAgICB1bnNpZ25lZCBsb25nIGVuZF9wZm4gPSBQQUdF
X0FMSUdOXzRLKGVuZCkgPj4gUEFHRV9TSElGVF80SzsKKyAgICBzdHJ1Y3Qg
aWRlbnRpdHlfbWFwICptYXA7CisgICAgc3RydWN0IGRvbWFpbl9pb21tdSAq
aGQgPSBkb21faW9tbXUoZCk7CisKKyAgICBBU1NFUlQocGNpZGV2c19sb2Nr
ZWQoKSk7CisgICAgQVNTRVJUKGJhc2UgPCBlbmQpOworCisgICAgLyoKKyAg
ICAgKiBObyBuZWVkIHRvIGFjcXVpcmUgaGQtPmFyY2gubWFwcGluZ19sb2Nr
OiBCb3RoIGluc2VydGlvbiBhbmQgcmVtb3ZhbAorICAgICAqIGdldCBkb25l
IHdoaWxlIGhvbGRpbmcgcGNpZGV2c19sb2NrLgorICAgICAqLworICAgIGxp
c3RfZm9yX2VhY2hfZW50cnkoIG1hcCwgJmhkLT5hcmNoLmlkZW50aXR5X21h
cHMsIGxpc3QgKQorICAgIHsKKyAgICAgICAgaWYgKCBtYXAtPmJhc2UgPT0g
YmFzZSAmJiBtYXAtPmVuZCA9PSBlbmQgKQorICAgICAgICB7CisgICAgICAg
ICAgICBpbnQgcmV0ID0gMDsKKworICAgICAgICAgICAgaWYgKCBwMm1hICE9
IHAybV9hY2Nlc3NfeCApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgaWYgKCBtYXAtPmFjY2VzcyAhPSBwMm1hICkKKyAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIC1FQUREUklOVVNFOworICAgICAgICAgICAgICAgICsr
bWFwLT5jb3VudDsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgaWYgKCAtLW1hcC0+Y291bnQgKQor
ICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGls
ZSAoIGJhc2VfcGZuIDwgZW5kX3BmbiApCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgaWYgKCBjbGVhcl9pZGVudGl0eV9wMm1fZW50cnkoZCwg
YmFzZV9wZm4pICkKKyAgICAgICAgICAgICAgICAgICAgcmV0ID0gLUVOWElP
OworICAgICAgICAgICAgICAgIGJhc2VfcGZuKys7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3QpOworICAgICAg
ICAgICAgeGZyZWUobWFwKTsKKworICAgICAgICAgICAgcmV0dXJuIHJldDsK
KyAgICAgICAgfQorCisgICAgICAgIGlmICggZW5kID49IG1hcC0+YmFzZSAm
JiBtYXAtPmVuZCA+PSBiYXNlICkKKyAgICAgICAgICAgIHJldHVybiAtRUFE
RFJJTlVTRTsKKyAgICB9CisKKyAgICBpZiAoIHAybWEgPT0gcDJtX2FjY2Vz
c194ICkKKyAgICAgICAgcmV0dXJuIC1FTk9FTlQ7CisKKyAgICB3aGlsZSAo
IGJhc2VfcGZuIDwgZW5kX3BmbiApCisgICAgeworICAgICAgICBpbnQgZXJy
ID0gc2V0X2lkZW50aXR5X3AybV9lbnRyeShkLCBiYXNlX3BmbiwgcDJtYSwg
ZmxhZyk7CisKKyAgICAgICAgaWYgKCBlcnIgKQorICAgICAgICAgICAgcmV0
dXJuIGVycjsKKyAgICAgICAgYmFzZV9wZm4rKzsKKyAgICB9CisKKyAgICBt
YXAgPSB4bWFsbG9jKHN0cnVjdCBpZGVudGl0eV9tYXApOworICAgIGlmICgg
IW1hcCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworICAgIG1hcC0+YmFz
ZSA9IGJhc2U7CisgICAgbWFwLT5lbmQgPSBlbmQ7CisgICAgbWFwLT5hY2Nl
c3MgPSBwMm1hOworICAgIG1hcC0+Y291bnQgPSAxOworICAgIGxpc3RfYWRk
X3RhaWwoJm1hcC0+bGlzdCwgJmhkLT5hcmNoLmlkZW50aXR5X21hcHMpOwor
CisgICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFw
X3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCit7CisgICAgc3RydWN0IGRv
bWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7CisgICAgc3RydWN0IGlk
ZW50aXR5X21hcCAqbWFwLCAqdG1wOworCisgICAgbGlzdF9mb3JfZWFjaF9l
bnRyeV9zYWZlICggbWFwLCB0bXAsICZoZC0+YXJjaC5pZGVudGl0eV9tYXBz
LCBsaXN0ICkKKyAgICB7CisgICAgICAgIGxpc3RfZGVsKCZtYXAtPmxpc3Qp
OworICAgICAgICB4ZnJlZShtYXApOworICAgIH0KK30KKwogc3RhdGljIGJv
b2wgX19od2RvbV9pbml0IGh3ZG9tX2lvbW11X21hcChjb25zdCBzdHJ1Y3Qg
ZG9tYWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nIHBmbiwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZu
KQotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2lvbW11LmgKKysrIGIveGVu
L2luY2x1ZGUvYXNtLXg4Ni9pb21tdS5oCkBAIC0xNiw2ICsxNiw3IEBACiAK
ICNpbmNsdWRlIDx4ZW4vZXJybm8uaD4KICNpbmNsdWRlIDx4ZW4vbGlzdC5o
PgorI2luY2x1ZGUgPHhlbi9tZW1fYWNjZXNzLmg+CiAjaW5jbHVkZSA8eGVu
L3NwaW5sb2NrLmg+CiAjaW5jbHVkZSA8YXNtL2FwaWNkZWYuaD4KICNpbmNs
dWRlIDxhc20vcHJvY2Vzc29yLmg+CkBAIC01MCwxMyArNTEsMTQgQEAgc3Ry
dWN0IGFyY2hfaW9tbXUKICAgICAgICAgc3BpbmxvY2tfdCBsb2NrOwogICAg
IH0gcGd0YWJsZXM7CiAKKyAgICBzdHJ1Y3QgbGlzdF9oZWFkIGlkZW50aXR5
X21hcHM7CisKICAgICB1bmlvbiB7CiAgICAgICAgIC8qIEludGVsIFZULWQg
Ki8KICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVpbnQ2NF90IHBn
ZF9tYWRkcjsgLyogaW8gcGFnZSBkaXJlY3RvcnkgbWFjaGluZSBhZGRyZXNz
ICovCiAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYWdhdzsgLyogYWRqdXN0
ZWQgZ3Vlc3QgYWRkcmVzcyB3aWR0aCwgMCBpcyBsZXZlbCAyIDMwLWJpdCAq
LwogICAgICAgICAgICAgdWludDY0X3QgaW9tbXVfYml0bWFwOyAvKiBiaXRt
YXAgb2YgaW9tbXUocykgdGhhdCB0aGUgZG9tYWluIHVzZXMgKi8KLSAgICAg
ICAgICAgIHN0cnVjdCBsaXN0X2hlYWQgbWFwcGVkX3JtcnJzOwogICAgICAg
ICB9IHZ0ZDsKICAgICAgICAgLyogQU1EIElPTU1VICovCiAgICAgICAgIHN0
cnVjdCB7CkBAIC0xMjIsNiArMTI0LDExIEBAIHN0YXRpYyBpbmxpbmUgdm9p
ZCBpb21tdV9kaXNhYmxlX3gyYXBpYygKICAgICAgICAgaW9tbXVfb3BzLmRp
c2FibGVfeDJhcGljKCk7CiB9CiAKK2ludCBpb21tdV9pZGVudGl0eV9tYXBw
aW5nKHN0cnVjdCBkb21haW4gKmQsIHAybV9hY2Nlc3NfdCBwMm1hLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcGFkZHJfdCBiYXNlLCBwYWRkcl90
IGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCBmbGFnKTsKK3ZvaWQgaW9tbXVfaWRlbnRpdHlfbWFwX3RlYXJkb3duKHN0
cnVjdCBkb21haW4gKmQpOworCiBleHRlcm4gYm9vbCB1bnRydXN0ZWRfbXNp
OwogCiBpbnQgcGlfdXBkYXRlX2lydGUoY29uc3Qgc3RydWN0IHBpX2Rlc2Mg
KnBpX2Rlc2MsIGNvbnN0IHN0cnVjdCBwaXJxICpwaXJxLAotLS0gYS94ZW4v
aW5jbHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14
ODYvcDJtLmgKQEAgLTg4OCw2ICs4ODgsMzQgQEAgc3RydWN0IHAybV9kb21h
aW4gKnAybV9nZXRfYWx0cDJtKHN0cnVjdAogc3RhdGljIGlubGluZSB2b2lk
IHAybV9hbHRwMm1fY2hlY2soc3RydWN0IHZjcHUgKnYsIHVpbnQxNl90IGlk
eCkge30KICNlbmRpZgogCisvKiBwMm0gYWNjZXNzIHRvIElPTU1VIGZsYWdz
ICovCitzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBwMm1fYWNjZXNzX3Rv
X2lvbW11X2ZsYWdzKHAybV9hY2Nlc3NfdCBwMm1hKQoreworICAgIHN3aXRj
aCAoIHAybWEgKQorICAgIHsKKyAgICBjYXNlIHAybV9hY2Nlc3Nfcnc6Cisg
ICAgY2FzZSBwMm1fYWNjZXNzX3J3eDoKKyAgICAgICAgcmV0dXJuIElPTU1V
Rl9yZWFkYWJsZSB8IElPTU1VRl93cml0YWJsZTsKKworICAgIGNhc2UgcDJt
X2FjY2Vzc19yOgorICAgIGNhc2UgcDJtX2FjY2Vzc19yeDoKKyAgICBjYXNl
IHAybV9hY2Nlc3Nfcngycnc6CisgICAgICAgIHJldHVybiBJT01NVUZfcmVh
ZGFibGU7CisKKyAgICBjYXNlIHAybV9hY2Nlc3NfdzoKKyAgICBjYXNlIHAy
bV9hY2Nlc3Nfd3g6CisgICAgICAgIHJldHVybiBJT01NVUZfd3JpdGFibGU7
CisKKyAgICBjYXNlIHAybV9hY2Nlc3NfbjoKKyAgICBjYXNlIHAybV9hY2Nl
c3NfeDoKKyAgICBjYXNlIHAybV9hY2Nlc3NfbjJyd3g6CisgICAgICAgIHJl
dHVybiAwOworICAgIH0KKworICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOwor
ICAgIHJldHVybiAwOworfQorCiAvKgogICogcDJtIHR5cGUgdG8gSU9NTVUg
ZmxhZ3MKICAqLwpAQCAtOTA5LDkgKzkzNywxMCBAQCBzdGF0aWMgaW5saW5l
IHVuc2lnbmVkIGludCBwMm1fZ2V0X2lvbW11CiAgICAgICAgIGZsYWdzID0g
SU9NTVVGX3JlYWRhYmxlOwogICAgICAgICBicmVhazsKICAgICBjYXNlIHAy
bV9tbWlvX2RpcmVjdDoKLSAgICAgICAgZmxhZ3MgPSBJT01NVUZfcmVhZGFi
bGU7Ci0gICAgICAgIGlmICggIXJhbmdlc2V0X2NvbnRhaW5zX3NpbmdsZXRv
bihtbWlvX3JvX3JhbmdlcywgbWZuX3gobWZuKSkgKQotICAgICAgICAgICAg
ZmxhZ3MgfD0gSU9NTVVGX3dyaXRhYmxlOworICAgICAgICBmbGFncyA9IHAy
bV9hY2Nlc3NfdG9faW9tbXVfZmxhZ3MocDJtYSk7CisgICAgICAgIGlmICgg
KGZsYWdzICYgSU9NTVVGX3dyaXRhYmxlKSAmJgorICAgICAgICAgICAgIHJh
bmdlc2V0X2NvbnRhaW5zX3NpbmdsZXRvbihtbWlvX3JvX3JhbmdlcywgbWZu
X3gobWZuKSkgKQorICAgICAgICAgICAgZmxhZ3MgJj0gfklPTU1VRl93cml0
YWJsZTsKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAg
ZmxhZ3MgPSAwOwo=

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-5.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-5.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UvY29tcGxldGUgcmUtYXNzaWdubWVu
dCBoYW5kbGluZwoKUHJpb3IgdG8gdGhlIGFzc2lnbm1lbnQgc3RlcCBoYXZp
bmcgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgZGV2aWNlcwpzaG91bGQgbm90
IGdldCBhc3NvY2lhdGVkIHdpdGggdGhlaXIgbmV3IG93bmVyLiBIYW5kIHRo
ZSBkZXZpY2UgdG8gRG9tSU8KKHBlcmhhcHMgdGVtcG9yYXJpbHkpLCB1bnRp
bCBhZnRlciB0aGUgZGUtYXNzaWdubWVudCBzdGVwIGhhcyBjb21wbGV0ZWQu
CgpEZS1hc3NpZ25tZW50IG9mIGEgZGV2aWNlIChmcm9tIG90aGVyIHRoYW4g
RG9tMCkgYXMgd2VsbCBhcyBmYWlsdXJlIG9mCnJlYXNzaWduX2RldmljZSgp
IGR1cmluZyBhc3NpZ25tZW50IHNob3VsZCByZXN1bHQgaW4gdW5pdHkgbWFw
cGluZ3MKZ2V0dGluZyB0b3JuIGRvd24uIFRoaXMgaW4gdHVybiByZXF1aXJl
cyBzd2l0Y2hpbmcgdG8gYSByZWZjb3VudGVkCm1hcHBpbmcgYXBwcm9hY2gs
IGFzIHdhcyBhbHJlYWR5IHVzZWQgYnkgVlQtZCBmb3IgaXRzIFJNUlJzLCB0
byBwcmV2ZW50CnVubWFwcGluZyBhIHJlZ2lvbiB1c2VkIGJ5IG11bHRpcGxl
IGRldmljZXMuCgpUaGlzIGlzIENWRS0yMDIxLTI4Njk2IC8gcGFydCBvZiBY
U0EtMzc4LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUGF1bCBEdXJyYW50IDxwYXVsQHhl
bi5vcmc+Ci0tLQp2OTogUmUtYmFzZS4Kdjc6IFJlLWJhc2UuCnY2OiBSZS1i
YXNlLgp2NTogU3dpdGNoIHRvIHVzaW5nIGlvbW11X2lkZW50aXR5X21hcHBp
bmcoKS4gQWxzbyB1bm1hcCgpIHdoZW4gYW55CiAgICBtYXAoKSBmYWlscyBp
biBhbWRfaW9tbXVfYXNzaWduX2RldmljZSgpLCB1bmxlc3MgaXQncyBEb20w
LiBSZS1iYXNlLgp2NDogVXNlIGRhZGRyX3RvX2RmbigpLiBEcm9wIHN0cmF5
IGJsYW5rIGxpbmUuIERvbid0IGV2ZXIgdW5tYXAgZnJvbQogICAgRG9tMC4K
djM6IFVzZSBEb21JTyBpbnN0ZWFkIG9mIERvbVhFTi4KdjI6IFJlLWJhc2Ug
b3ZlciBYU0EtMzAyLgoKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
YW1kL2lvbW11LmgKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L2lvbW11LmgKQEAgLTIzMiw4ICsyMzIsMTAgQEAgaW50IF9fbXVzdF9jaGVj
ayBhbWRfaW9tbXVfdW5tYXBfcGFnZShzdAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmZsdXNoX2ZsYWdz
KTsKIGludCBfX211c3RfY2hlY2sgYW1kX2lvbW11X2FsbG9jX3Jvb3Qoc3Ry
dWN0IGRvbWFpbiAqZCk7CiBpbnQgYW1kX2lvbW11X3Jlc2VydmVfZG9tYWlu
X3VuaXR5X21hcChzdHJ1Y3QgZG9tYWluICpkb21haW4sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IHBoeXNfYWRk
ciwgdW5zaWduZWQgbG9uZyBzaXplLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IGl3LCBpbnQgaXIpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGl2
cnNfdW5pdHlfbWFwICptYXAsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZyk7CitpbnQgYW1kX2lv
bW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X3VubWFwKHN0cnVjdCBkb21haW4g
KmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqbWFwKTsKIGludCBfX211
c3RfY2hlY2sgYW1kX2lvbW11X2ZsdXNoX2lvdGxiX3BhZ2VzKHN0cnVjdCBk
b21haW4gKmQsIGRmbl90IGRmbiwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgcGFnZV9jb3Vu
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCBmbHVzaF9mbGFncyk7Ci0tLSBhL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9tYXAuYworKysgYi94ZW4vZHJp
dmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfbWFwLmMKQEAgLTQxOSwzOCAr
NDE5LDQ5IEBAIGludCBhbWRfaW9tbXVfZmx1c2hfaW90bGJfYWxsKHN0cnVj
dCBkb20KICAgICByZXR1cm4gMDsKIH0KIAotaW50IGFtZF9pb21tdV9yZXNl
cnZlX2RvbWFpbl91bml0eV9tYXAoc3RydWN0IGRvbWFpbiAqZG9tYWluLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZHJf
dCBwaHlzX2FkZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUsIGludCBpdywgaW50IGlyKQor
aW50IGFtZF9pb21tdV9yZXNlcnZlX2RvbWFpbl91bml0eV9tYXAoc3RydWN0
IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqbWFwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IGZsYWcpCiB7Ci0gICAgdW5zaWduZWQgbG9uZyBucGFnZXMsIGk7Ci0g
ICAgdW5zaWduZWQgbG9uZyBnZm47Ci0gICAgdW5zaWduZWQgaW50IGZsYWdz
ID0gISFpcjsKLSAgICB1bnNpZ25lZCBpbnQgZmx1c2hfZmxhZ3MgPSAwOwot
ICAgIGludCBydCA9IDA7Ci0KLSAgICBpZiAoIGl3ICkKLSAgICAgICAgZmxh
Z3MgfD0gSU9NTVVGX3dyaXRhYmxlOwotCi0gICAgbnBhZ2VzID0gcmVnaW9u
X3RvX3BhZ2VzKHBoeXNfYWRkciwgc2l6ZSk7Ci0gICAgZ2ZuID0gcGh5c19h
ZGRyID4+IFBBR0VfU0hJRlQ7Ci0gICAgZm9yICggaSA9IDA7IGkgPCBucGFn
ZXM7IGkrKyApCisgICAgaW50IHJjOworCisgICAgaWYgKCBkID09IGRvbV9p
byApCisgICAgICAgIHJldHVybiAwOworCisgICAgZm9yICggcmMgPSAwOyAh
cmMgJiYgbWFwOyBtYXAgPSBtYXAtPm5leHQgKQogICAgIHsKLSAgICAgICAg
dW5zaWduZWQgbG9uZyBmcmFtZSA9IGdmbiArIGk7CisgICAgICAgIHAybV9h
Y2Nlc3NfdCBwMm1hID0gcDJtX2FjY2Vzc19uOworCisgICAgICAgIGlmICgg
bWFwLT5yZWFkICkKKyAgICAgICAgICAgIHAybWEgfD0gcDJtX2FjY2Vzc19y
OworICAgICAgICBpZiAoIG1hcC0+d3JpdGUgKQorICAgICAgICAgICAgcDJt
YSB8PSBwMm1fYWNjZXNzX3c7CiAKLSAgICAgICAgcnQgPSBhbWRfaW9tbXVf
bWFwX3BhZ2UoZG9tYWluLCBfZGZuKGZyYW1lKSwgX21mbihmcmFtZSksIGZs
YWdzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmx1c2hf
ZmxhZ3MpOwotICAgICAgICBpZiAoIHJ0ICE9IDAgKQotICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIHJjID0gaW9tbXVfaWRlbnRpdHlfbWFwcGluZyhk
LCBwMm1hLCBtYXAtPmFkZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtYXAtPmFkZHIgKyBtYXAtPmxlbmd0aCAtIDEsIGZsYWcp
OwogICAgIH0KIAotICAgIC8qIFVzZSB3aGlsZS1icmVhayB0byBhdm9pZCBj
b21waWxlciB3YXJuaW5nICovCi0gICAgd2hpbGUgKCBmbHVzaF9mbGFncyAm
JgotICAgICAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2lvdGxiX3BhZ2VzKGRv
bWFpbiwgX2RmbihnZm4pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG5wYWdlcywgZmx1c2hfZmxhZ3MpICkKLSAgICAgICAg
YnJlYWs7CisgICAgcmV0dXJuIHJjOworfQorCitpbnQgYW1kX2lvbW11X3Jl
c2VydmVfZG9tYWluX3VuaXR5X3VubWFwKHN0cnVjdCBkb21haW4gKmQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHN0cnVjdCBpdnJzX3VuaXR5X21hcCAqbWFwKQoreworICAgIGludCByYzsK
KworICAgIGlmICggZCA9PSBkb21faW8gKQorICAgICAgICByZXR1cm4gMDsK
KworICAgIGZvciAoIHJjID0gMDsgbWFwOyBtYXAgPSBtYXAtPm5leHQgKQor
ICAgIHsKKyAgICAgICAgaW50IHJldCA9IGlvbW11X2lkZW50aXR5X21hcHBp
bmcoZCwgcDJtX2FjY2Vzc194LCBtYXAtPmFkZHIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC0+YWRkciArIG1hcC0+
bGVuZ3RoIC0gMSwgMCk7CisKKyAgICAgICAgaWYgKCByZXQgJiYgcmV0ICE9
IC1FTk9FTlQgJiYgIXJjICkKKyAgICAgICAgICAgIHJjID0gcmV0OworICAg
IH0KIAotICAgIHJldHVybiBydDsKKyAgICByZXR1cm4gcmM7CiB9CiAKIGlu
dCBfX2luaXQgYW1kX2lvbW11X3F1YXJhbnRpbmVfaW5pdChzdHJ1Y3QgZG9t
YWluICpkKQotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNp
X2FtZF9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9wY2lfYW1kX2lvbW11LmMKQEAgLTM0Nyw2ICszNDcsNyBAQCBzdGF0aWMg
aW50IHJlYXNzaWduX2RldmljZShzdHJ1Y3QgZG9tYWluCiB7CiAgICAgc3Ry
dWN0IGFtZF9pb21tdSAqaW9tbXU7CiAgICAgaW50IGJkZiwgcmM7CisgICAg
Y29uc3Qgc3RydWN0IGl2cnNfbWFwcGluZ3MgKml2cnNfbWFwcGluZ3MgPSBn
ZXRfaXZyc19tYXBwaW5ncyhwZGV2LT5zZWcpOwogCiAgICAgYmRmID0gUENJ
X0JERjIocGRldi0+YnVzLCBwZGV2LT5kZXZmbik7CiAgICAgaW9tbXUgPSBm
aW5kX2lvbW11X2Zvcl9kZXZpY2UocGRldi0+c2VnLCBiZGYpOwpAQCAtMzYx
LDEwICszNjIsMjQgQEAgc3RhdGljIGludCByZWFzc2lnbl9kZXZpY2Uoc3Ry
dWN0IGRvbWFpbgogCiAgICAgYW1kX2lvbW11X2Rpc2FibGVfZG9tYWluX2Rl
dmljZShzb3VyY2UsIGlvbW11LCBkZXZmbiwgcGRldik7CiAKLSAgICBpZiAo
IGRldmZuID09IHBkZXYtPmRldmZuICkKKyAgICAvKgorICAgICAqIElmIHRo
ZSBkZXZpY2UgYmVsb25ncyB0byB0aGUgaGFyZHdhcmUgZG9tYWluLCBhbmQg
aXQgaGFzIGEgdW5pdHkgbWFwcGluZywKKyAgICAgKiBkb24ndCByZW1vdmUg
aXQgZnJvbSB0aGUgaGFyZHdhcmUgZG9tYWluLCBiZWNhdXNlIEJJT1MgbWF5
IHJlZmVyZW5jZSB0aGF0CisgICAgICogbWFwcGluZy4KKyAgICAgKi8KKyAg
ICBpZiAoICFpc19oYXJkd2FyZV9kb21haW4oc291cmNlKSApCiAgICAgewot
ICAgICAgICBsaXN0X21vdmUoJnBkZXYtPmRvbWFpbl9saXN0LCAmdGFyZ2V0
LT5wZGV2X2xpc3QpOwotICAgICAgICBwZGV2LT5kb21haW4gPSB0YXJnZXQ7
CisgICAgICAgIHJjID0gYW1kX2lvbW11X3Jlc2VydmVfZG9tYWluX3VuaXR5
X3VubWFwKAorICAgICAgICAgICAgICAgICBzb3VyY2UsCisgICAgICAgICAg
ICAgICAgIGl2cnNfbWFwcGluZ3NbZ2V0X2RtYV9yZXF1ZXN0b3JfaWQocGRl
di0+c2VnLCBiZGYpXS51bml0eV9tYXApOworICAgICAgICBpZiAoIHJjICkK
KyAgICAgICAgICAgIHJldHVybiByYzsKKyAgICB9CisKKyAgICBpZiAoIGRl
dmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRvbWFpbiAhPSBkb21faW8g
KQorICAgIHsKKyAgICAgICAgbGlzdF9tb3ZlKCZwZGV2LT5kb21haW5fbGlz
dCwgJmRvbV9pby0+cGRldl9saXN0KTsKKyAgICAgICAgcGRldi0+ZG9tYWlu
ID0gZG9tX2lvOwogICAgIH0KIAogICAgIHJjID0gYW1kX2lvbW11X3NldHVw
X2RvbWFpbl9kZXZpY2UodGFyZ2V0LCBpb21tdSwgZGV2Zm4sIHBkZXYpOwpA
QCAtMzc0LDYgKzM4OSwxMiBAQCBzdGF0aWMgaW50IHJlYXNzaWduX2Rldmlj
ZShzdHJ1Y3QgZG9tYWluCiAgICAgQU1EX0lPTU1VX0RFQlVHKCJSZS1hc3Np
Z24gJXBwIGZyb20gZG9tJWQgdG8gZG9tJWRcbiIsCiAgICAgICAgICAgICAg
ICAgICAgICZwZGV2LT5zYmRmLCBzb3VyY2UtPmRvbWFpbl9pZCwgdGFyZ2V0
LT5kb21haW5faWQpOwogCisgICAgaWYgKCBkZXZmbiA9PSBwZGV2LT5kZXZm
biAmJiBwZGV2LT5kb21haW4gIT0gdGFyZ2V0ICkKKyAgICB7CisgICAgICAg
IGxpc3RfbW92ZSgmcGRldi0+ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBkZXZf
bGlzdCk7CisgICAgICAgIHBkZXYtPmRvbWFpbiA9IHRhcmdldDsKKyAgICB9
CisKICAgICByZXR1cm4gMDsKIH0KIApAQCAtMzg0LDIwICs0MDUsMjggQEAg
c3RhdGljIGludCBhbWRfaW9tbXVfYXNzaWduX2RldmljZShzdHJ1YwogICAg
IHN0cnVjdCBpdnJzX21hcHBpbmdzICppdnJzX21hcHBpbmdzID0gZ2V0X2l2
cnNfbWFwcGluZ3MocGRldi0+c2VnKTsKICAgICBpbnQgYmRmID0gUENJX0JE
RjIocGRldi0+YnVzLCBkZXZmbik7CiAgICAgaW50IHJlcV9pZCA9IGdldF9k
bWFfcmVxdWVzdG9yX2lkKHBkZXYtPnNlZywgYmRmKTsKLSAgICBjb25zdCBz
dHJ1Y3QgaXZyc191bml0eV9tYXAgKnVuaXR5X21hcDsKKyAgICBpbnQgcmMg
PSBhbWRfaW9tbXVfcmVzZXJ2ZV9kb21haW5fdW5pdHlfbWFwKAorICAgICAg
ICAgICAgICAgICBkLCBpdnJzX21hcHBpbmdzW3JlcV9pZF0udW5pdHlfbWFw
LCBmbGFnKTsKIAotICAgIGZvciAoIHVuaXR5X21hcCA9IGl2cnNfbWFwcGlu
Z3NbcmVxX2lkXS51bml0eV9tYXA7IHVuaXR5X21hcDsKLSAgICAgICAgICB1
bml0eV9tYXAgPSB1bml0eV9tYXAtPm5leHQgKQorICAgIGlmICggIXJjICkK
KyAgICAgICAgcmMgPSByZWFzc2lnbl9kZXZpY2UocGRldi0+ZG9tYWluLCBk
LCBkZXZmbiwgcGRldik7CisKKyAgICBpZiAoIHJjICYmICFpc19oYXJkd2Fy
ZV9kb21haW4oZCkgKQogICAgIHsKLSAgICAgICAgaW50IHJjID0gYW1kX2lv
bW11X3Jlc2VydmVfZG9tYWluX3VuaXR5X21hcCgKLSAgICAgICAgICAgICAg
ICAgICAgIGQsIHVuaXR5X21hcC0+YWRkciwgdW5pdHlfbWFwLT5sZW5ndGgs
Ci0gICAgICAgICAgICAgICAgICAgICB1bml0eV9tYXAtPndyaXRlLCB1bml0
eV9tYXAtPnJlYWQpOworICAgICAgICBpbnQgcmV0ID0gYW1kX2lvbW11X3Jl
c2VydmVfZG9tYWluX3VuaXR5X3VubWFwKAorICAgICAgICAgICAgICAgICAg
ICAgIGQsIGl2cnNfbWFwcGluZ3NbcmVxX2lkXS51bml0eV9tYXApOwogCi0g
ICAgICAgIGlmICggcmMgKQotICAgICAgICAgICAgcmV0dXJuIHJjOworICAg
ICAgICBpZiAoIHJldCApCisgICAgICAgIHsKKyAgICAgICAgICAgIHByaW50
ayhYRU5MT0dfRVJSICJBTUQtVmk6ICIKKyAgICAgICAgICAgICAgICAgICAi
dW5pdHktdW5tYXAgZm9yICVwZC8lMDR4OiUwMng6JTAyeC4ldSBmYWlsZWQg
KCVkKVxuIiwKKyAgICAgICAgICAgICAgICAgICBkLCBwZGV2LT5zZWcsIHBk
ZXYtPmJ1cywKKyAgICAgICAgICAgICAgICAgICBQQ0lfU0xPVChkZXZmbiks
IFBDSV9GVU5DKGRldmZuKSwgcmV0KTsKKyAgICAgICAgICAgIGRvbWFpbl9j
cmFzaChkKTsKKyAgICAgICAgfQogICAgIH0KIAotICAgIHJldHVybiByZWFz
c2lnbl9kZXZpY2UocGRldi0+ZG9tYWluLCBkLCBkZXZmbiwgcGRldik7Cisg
ICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgdm9pZCBhbWRfaW9tbXVfY2xl
YXJfcm9vdF9wZ3RhYmxlKHN0cnVjdCBkb21haW4gKmQpCkBAIC00MTEsNiAr
NDQwLDcgQEAgc3RhdGljIHZvaWQgYW1kX2lvbW11X2NsZWFyX3Jvb3RfcGd0
YWJsZQogCiBzdGF0aWMgdm9pZCBhbWRfaW9tbXVfZG9tYWluX2Rlc3Ryb3ko
c3RydWN0IGRvbWFpbiAqZCkKIHsKKyAgICBpb21tdV9pZGVudGl0eV9tYXBf
dGVhcmRvd24oZCk7CiAgICAgQVNTRVJUKCFkb21faW9tbXUoZCktPmFyY2gu
YW1kLnJvb3RfdGFibGUpOwogfQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-6.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-6.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBBTUQvSU9NTVU6IHJlLWFycmFuZ2UgZXhjbHVzaW9uIHJhbmdlIGFuZCB1
bml0eSBtYXAgcmVjb3JkaW5nCgpUaGUgc3BlYyBtYWtlcyBubyBwcm92aXNp
b25zIGZvciBPUyBiZWhhdmlvciBoZXJlIHRvIGRlcGVuZCBvbiB0aGUKYW1v
dW50IG9mIFJBTSBmb3VuZCBvbiB0aGUgc3lzdGVtLiBXaGlsZSB0aGUgc3Bl
YyBtYXkgbm90IHN1ZmZpY2llbnRseQpjbGVhcmx5IGRpc3Rpbmd1aXNoIGJv
dGgga2luZHMgb2YgcmVnaW9ucywgdGhleSBhcmUgc3VyZWx5IG1lYW50IHRv
IGJlCnNlcGFyYXRlIHRoaW5nczogT25seSByZWdpb25zIHdpdGggQUNQSV9J
Vk1EX0VYQ0xVU0lPTl9SQU5HRSBzZXQgc2hvdWxkCmJlIGNhbmRpZGF0ZXMg
Zm9yIHB1dHRpbmcgaW4gdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3RlcnMu
IChBcyB0aGVyZSdzCm9ubHkgYSBzaW5nbGUgc3VjaCBwYWlyIG9mIHJlZ2lz
dGVycyBwZXIgSU9NTVUsIHNlY29uZGFyeSBub24tYWRqYWNlbnQKcmVnaW9u
cyB3aXRoIHRoZSBmbGFnIHNldCBhbHJlYWR5IGdldCBjb252ZXJ0ZWQgdG8g
dW5pdHkgbWFwcGVkCnJlZ2lvbnMuKQoKRmlyc3Qgb2YgYWxsLCBkcm9wIHRo
ZSBkZXBlbmRlbmN5IG9uIG1heF9wYWdlLiBXaXRoIGNvbW1pdCBiNGYwNDIy
MzZhZTAKKCJBTUQvSU9NTVU6IENlYXNlIHVzaW5nIGEgZHluYW1pYyBoZWln
aHQgZm9yIHRoZSBJT01NVSBwYWdldGFibGVzIikgdGhlCnVzZSBvZiBpdCBo
ZXJlIHdhcyBzdGFsZSBhbnl3YXk7IGl0IHdhcyBib2d1cyBhbHJlYWR5IGJl
Zm9yZSwgYXMgaXQKZGlkbid0IGFjY291bnQgZm9yIG1heF9wYWdlIGdldHRp
bmcgaW5jcmVhc2VkIGxhdGVyIG9uLiBTaW1wbHkgdHJ5IGFuCmV4Y2x1c2lv
biByYW5nZSByZWdpc3RyYXRpb24gZmlyc3QsIGFuZCBpZiBpdCBmYWlscyAo
Zm9yIGJlaW5nCnVuc3VpdGFibGUgb3Igbm9uLW1lcmdlYWJsZSksIHJlZ2lz
dGVyIGEgdW5pdHkgbWFwcGluZyByYW5nZS4KCldpdGggdGhpcyB2YXJpb3Vz
IGxvY2FsIHZhcmlhYmxlcyBiZWNvbWUgdW5uZWNlc3NhcnkgYW5kIGhlbmNl
IGdldApkcm9wcGVkIGF0IHRoZSBzYW1lIHRpbWUuCgpXaXRoIHRoZSBtYXhf
cGFnZSBib3VuZGFyeSBkcm9wcGVkIGZvciB1c2luZyB1bml0eSBtYXBzLCB0
aGUgbWluaW11bQpwYWdlIHRhYmxlIHRyZWUgaGVpZ2h0IG5vdyBuZWVkcyBi
b3RoIHJlY29yZGluZyBhbmQgZW5mb3JjaW5nIGluCmFtZF9pb21tdV9kb21h
aW5faW5pdCgpLiBTaW5jZSB3ZSBjYW4ndCBwcmVkaWN0IHdoaWNoIGRldmlj
ZXMgbWF5IGdldAphc3NpZ25lZCB0byBhIGRvbWFpbiwgb3VyIG9ubHkgb3B0
aW9uIGlzIHRvIHVuaWZvcm1seSBmb3JjZSBhdCBsZWFzdAp0aGF0IGhlaWdo
dCBmb3IgYWxsIGRvbWFpbnMsIG5vdyB0aGF0IHRoZSBoZWlnaHQgaXNuJ3Qg
ZHluYW1pYyBhbnltb3JlLgoKRnVydGhlciBkb24ndCBtYWtlIHVzZSBvZiB0
aGUgZXhjbHVzaW9uIHJhbmdlIHVubGVzcyBBQ1BJIGRhdGEgc2F5cyBzby4K
Ck5vdGUgdGhhdCBleGNsdXNpb24gcmFuZ2UgcmVnaXN0cmF0aW9uIGluCnJl
Z2lzdGVyX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygpIGlzIG9uIGEgYmVzdCBl
ZmZvcnQgYmFzaXMuIEhlbmNlIHVuaXR5Cm1hcCBlbnRyaWVzIGFsc28gcmVn
aXN0ZXJlZCBhcmUgcmVkdW5kYW50IHdoZW4gdGhlIGZvcm1lciBzdWNjZWVk
ZWQsIGJ1dAp0aGV5IGFsc28gZG8gbm8gaGFybS4gSW1wcm92ZW1lbnRzIGlu
IHRoaXMgYXJlYSBjYW4gYmUgZG9uZSBsYXRlciBpbW8uCgpBbHNvIGFkanVz
dCB0eXBlcyB3aGVyZSBzdWl0YWJsZSB3aXRob3V0IHRvdWNoaW5nIGV4dHJh
IGxpbmVzLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zNzguCgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBQYXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KLS0tClRCRDogVGhl
IGFkanVzdG1lbnQgZG9uZSB0byBhbWRfaW9tbXVfZG9tYWluX2luaXQoKSB3
b3VsZCBzdWdnZXN0IHRoYXQKICAgICBpdCBtaWdodCBiZSB3b3J0aCBjb25z
aWRlcmluZyB0byB1c2UgdGhlIGV4Y2x1c2lvbiByYW5nZSByZWdpc3Rlcgog
ICAgIGZvciB0aGUgaGlnaGVzdCByZXBvcnRlZCAoYW5kIHN1aXRhYmxlKSBy
YW5nZSwgcmF0aGVyIHRoYW4gdGhlCiAgICAgZmlyc3Qgb25lIGZvdW5kICho
b3dldmVyIHVubGlrZWx5IGl0IG1pZ2h0IGJlIHRvIGZpbmQgbXVsdGlwbGUK
ICAgICBvbmVzIGluIHRoZSBmaXJzdCBwbGFjZSkuIFRoYXQgd2F5IHdlIG1p
Z2h0IGJlIGFibGUgdG8gbGltaXQgdGhlCiAgICAgcGFnZSB0YWJsZSB0cmVl
IGhlaWdodC4KLS0tCnY5OiBSZS1iYXNlLgp2ODogUmUtYmFzZSBvdmVyIGFk
anVzdG1lbnRzIHRvIGVhcmxpZXIgcGF0Y2guCnY3OiBEb24ndCB1c2UgZXhj
bHVzaW9uIHJhbmdlIHdoZW4gQUNQSSB0YWJsZSBlbnRyeSBkb2Vzbid0IHNh
eSBzby4KdjY6IFJlLWJhc2UuCnY1OiBOZXcuCi0tLQpCYWNrcG9ydGluZyBu
b3RlOiBUaGlzIGRlcGVuZHMgb24gYjc1YjNjNjJmZTRhICgiQU1EL0lPTU1V
OiBmaXgKb2ZmLWJ5LW9uZSBpbiBhbWRfaW9tbXVfZ2V0X3BhZ2luZ19tb2Rl
KCkgY2FsbGVycyIpLgoKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
YW1kL2lvbW11LmgKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L2lvbW11LmgKQEAgLTMwNCw2ICszMDQsOCBAQCBleHRlcm4gc3RydWN0IGhw
ZXRfc2JkZiB7CiAgICAgfSBpbml0OwogfSBocGV0X3NiZGY7CiAKK2V4dGVy
biBpbnQgYW1kX2lvbW11X21pbl9wYWdpbmdfbW9kZTsKKwogZXh0ZXJuIHZv
aWQgKnNoYXJlZF9pbnRyZW1hcF90YWJsZTsKIGV4dGVybiB1bnNpZ25lZCBs
b25nICpzaGFyZWRfaW50cmVtYXBfaW51c2U7CiAKLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2FjcGkuYworKysgYi94ZW4vZHJp
dmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfYWNwaS5jCkBAIC0xMTcsMTIg
KzExNyw4IEBAIHN0YXRpYyBzdHJ1Y3QgYW1kX2lvbW11ICogX19pbml0IGZp
bmRfaW8KIH0KIAogc3RhdGljIGludCBfX2luaXQgcmVzZXJ2ZV9pb21tdV9l
eGNsdXNpb25fcmFuZ2UoCi0gICAgc3RydWN0IGFtZF9pb21tdSAqaW9tbXUs
IHVpbnQ2NF90IGJhc2UsIHVpbnQ2NF90IGxpbWl0LAotICAgIGJvb2wgYWxs
LCBib29sIGl3LCBib29sIGlyKQorICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlv
bW11LCBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGltaXQsIGJvb2wgYWxsKQog
ewotICAgIGlmICggIWlyIHx8ICFpdyApCi0gICAgICAgIHJldHVybiAtRVBF
Uk07Ci0KICAgICAvKiBuZWVkIHRvIGV4dGVuZCBleGNsdXNpb24gcmFuZ2U/
ICovCiAgICAgaWYgKCBpb21tdS0+ZXhjbHVzaW9uX2VuYWJsZSApCiAgICAg
ewpAQCAtMTUxLDE0ICsxNDcsMTggQEAgc3RhdGljIGludCBfX2luaXQgcmVz
ZXJ2ZV91bml0eV9tYXBfZm9yXwogewogICAgIHN0cnVjdCBpdnJzX21hcHBp
bmdzICppdnJzX21hcHBpbmdzID0gZ2V0X2l2cnNfbWFwcGluZ3Moc2VnKTsK
ICAgICBzdHJ1Y3QgaXZyc191bml0eV9tYXAgKnVuaXR5X21hcCA9IGl2cnNf
bWFwcGluZ3NbYmRmXS51bml0eV9tYXA7CisgICAgaW50IHBhZ2luZ19tb2Rl
ID0gYW1kX2lvbW11X2dldF9wYWdpbmdfbW9kZShQRk5fVVAoYmFzZSArIGxl
bmd0aCkpOworCisgICAgaWYgKCBwYWdpbmdfbW9kZSA8IDAgKQorICAgICAg
ICByZXR1cm4gcGFnaW5nX21vZGU7CiAKICAgICAvKiBDaGVjayBmb3Igb3Zl
cmxhcHMuICovCiAgICAgZm9yICggOyB1bml0eV9tYXA7IHVuaXR5X21hcCA9
IHVuaXR5X21hcC0+bmV4dCApCiAgICAgewogICAgICAgICAvKgogICAgICAg
ICAgKiBFeGFjdCBtYXRjaGVzIGFyZSBva2F5LiBUaGlzIGNhbiBpbiBwYXJ0
aWN1bGFyIGhhcHBlbiB3aGVuCi0gICAgICAgICAqIHJlZ2lzdGVyX2V4Y2x1
c2lvbl9yYW5nZV9mb3JfZGV2aWNlKCkgY2FsbHMgaGVyZSB0d2ljZSBmb3Ig
dGhlCi0gICAgICAgICAqIHNhbWUgKHMsYixkLGYpLgorICAgICAgICAgKiBy
ZWdpc3Rlcl9yYW5nZV9mb3JfZGV2aWNlKCkgY2FsbHMgaGVyZSB0d2ljZSBm
b3IgdGhlIHNhbWUKKyAgICAgICAgICogKHMsYixkLGYpLgogICAgICAgICAg
Ki8KICAgICAgICAgaWYgKCBiYXNlID09IHVuaXR5X21hcC0+YWRkciAmJiBs
ZW5ndGggPT0gdW5pdHlfbWFwLT5sZW5ndGggJiYKICAgICAgICAgICAgICBp
ciA9PSB1bml0eV9tYXAtPnJlYWQgJiYgaXcgPT0gdW5pdHlfbWFwLT53cml0
ZSApCkBAIC0xODYsNTUgKzE4Niw1MiBAQCBzdGF0aWMgaW50IF9faW5pdCBy
ZXNlcnZlX3VuaXR5X21hcF9mb3JfCiAgICAgdW5pdHlfbWFwLT5uZXh0ID0g
aXZyc19tYXBwaW5nc1tiZGZdLnVuaXR5X21hcDsKICAgICBpdnJzX21hcHBp
bmdzW2JkZl0udW5pdHlfbWFwID0gdW5pdHlfbWFwOwogCisgICAgaWYgKCBw
YWdpbmdfbW9kZSA+IGFtZF9pb21tdV9taW5fcGFnaW5nX21vZGUgKQorICAg
ICAgICBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2RlID0gcGFnaW5nX21vZGU7
CisKICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBfX2luaXQgcmVn
aXN0ZXJfZXhjbHVzaW9uX3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygKLSAgICB1
bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3
LCB1OCBpcikKK3N0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX3JhbmdlX2Zv
cl9hbGxfZGV2aWNlcygKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGlt
aXQsIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAg
IGludCBzZWcgPSAwOyAvKiBYWFggKi8KLSAgICB1bnNpZ25lZCBsb25nIHJh
bmdlX3RvcCwgaW9tbXVfdG9wLCBsZW5ndGg7CiAgICAgc3RydWN0IGFtZF9p
b21tdSAqaW9tbXU7Ci0gICAgdW5zaWduZWQgaW50IGJkZjsKICAgICBpbnQg
cmMgPSAwOwogCiAgICAgLyogaXMgcGFydCBvZiBleGNsdXNpb24gcmFuZ2Ug
aW5zaWRlIG9mIElPTU1VIHZpcnR1YWwgYWRkcmVzcyBzcGFjZT8gKi8KICAg
ICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRlciBpcyBhc3N1bWVkIHRvIGJl
IHBhZ2UtYWxpZ25lZCAqLwotICAgIHJhbmdlX3RvcCA9IGxpbWl0ICsgUEFH
RV9TSVpFOwotICAgIGlvbW11X3RvcCA9IG1heF9wYWdlICogUEFHRV9TSVpF
OwotICAgIGlmICggYmFzZSA8IGlvbW11X3RvcCApCi0gICAgewotICAgICAg
ICBpZiAoIHJhbmdlX3RvcCA+IGlvbW11X3RvcCApCi0gICAgICAgICAgICBy
YW5nZV90b3AgPSBpb21tdV90b3A7Ci0gICAgICAgIGxlbmd0aCA9IHJhbmdl
X3RvcCAtIGJhc2U7Ci0gICAgICAgIC8qIHJlc2VydmUgci93IHVuaXR5LW1h
cHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmljZXMgKi8KLSAgICAgICAgLyog
bm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFydCBvZiB0aGUgZXhjbHVzaW9u
IHJhbmdlICovCi0gICAgICAgIGZvciAoIGJkZiA9IDA7ICFyYyAmJiBiZGYg
PCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyApCi0gICAgICAgICAgICByYyA9
IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYsIGJhc2Us
IGxlbmd0aCwgaXcsIGlyKTsKLSAgICAgICAgLyogcHVzaCAnYmFzZScganVz
dCBvdXRzaWRlIG9mIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSAqLwotICAgICAg
ICBiYXNlID0gaW9tbXVfdG9wOwotICAgIH0KLSAgICAvKiByZWdpc3RlciBJ
T01NVSBleGNsdXNpb24gcmFuZ2Ugc2V0dGluZ3MgKi8KLSAgICBpZiAoICFy
YyAmJiBsaW1pdCA+PSBpb21tdV90b3AgKQorICAgIGlmICggZXhjbHVzaW9u
ICkKICAgICB7CiAgICAgICAgIGZvcl9lYWNoX2FtZF9pb21tdSggaW9tbXUg
KQogICAgICAgICB7Ci0gICAgICAgICAgICByYyA9IHJlc2VydmVfaW9tbXVf
ZXhjbHVzaW9uX3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAv
KiBhbGwgKi8sIGl3LCBpcik7Ci0gICAgICAgICAgICBpZiAoIHJjICkKLSAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGludCByZXQgPSBy
ZXNlcnZlX2lvbW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGlt
aXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdHJ1ZSAvKiBhbGwgKi8pOworCisgICAgICAgICAgICBp
ZiAoIHJldCAmJiAhcmMgKQorICAgICAgICAgICAgICAgIHJjID0gcmV0Owog
ICAgICAgICB9CiAgICAgfQogCisgICAgaWYgKCAhZXhjbHVzaW9uIHx8IHJj
ICkKKyAgICB7CisgICAgICAgIHBhZGRyX3QgbGVuZ3RoID0gbGltaXQgKyBQ
QUdFX1NJWkUgLSBiYXNlOworICAgICAgICB1bnNpZ25lZCBpbnQgYmRmOwor
CisgICAgICAgIC8qIHJlc2VydmUgci93IHVuaXR5LW1hcHBlZCBwYWdlIGVu
dHJpZXMgZm9yIGRldmljZXMgKi8KKyAgICAgICAgZm9yICggYmRmID0gcmMg
PSAwOyAhcmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysgKQor
ICAgICAgICAgICAgcmMgPSByZXNlcnZlX3VuaXR5X21hcF9mb3JfZGV2aWNl
KHNlZywgYmRmLCBiYXNlLCBsZW5ndGgsIGl3LCBpcik7CisgICAgfQorCiAg
ICAgcmV0dXJuIHJjOwogfQogCi1zdGF0aWMgaW50IF9faW5pdCByZWdpc3Rl
cl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgKLSAgICB1MTYgYmRmLCB1
bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3
LCB1OCBpcikKK3N0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX3JhbmdlX2Zv
cl9kZXZpY2UoCisgICAgdW5zaWduZWQgaW50IGJkZiwgcGFkZHJfdCBiYXNl
LCBwYWRkcl90IGxpbWl0LAorICAgIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wg
ZXhjbHVzaW9uKQogewogICAgIGludCBzZWcgPSAwOyAvKiBYWFggKi8KICAg
ICBzdHJ1Y3QgaXZyc19tYXBwaW5ncyAqaXZyc19tYXBwaW5ncyA9IGdldF9p
dnJzX21hcHBpbmdzKHNlZyk7Ci0gICAgdW5zaWduZWQgbG9uZyByYW5nZV90
b3AsIGlvbW11X3RvcCwgbGVuZ3RoOwogICAgIHN0cnVjdCBhbWRfaW9tbXUg
KmlvbW11OwogICAgIHUxNiByZXE7CiAgICAgaW50IHJjID0gMDsKQEAgLTI0
OCwyNyArMjQ1LDE5IEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4
Y2x1c2lvbl9yYW4KICAgICByZXEgPSBpdnJzX21hcHBpbmdzW2JkZl0uZHRl
X3JlcXVlc3Rvcl9pZDsKIAogICAgIC8qIG5vdGU6ICdsaW1pdCcgcGFyYW1l
dGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICovCi0gICAgcmFu
Z2VfdG9wID0gbGltaXQgKyBQQUdFX1NJWkU7Ci0gICAgaW9tbXVfdG9wID0g
bWF4X3BhZ2UgKiBQQUdFX1NJWkU7Ci0gICAgaWYgKCBiYXNlIDwgaW9tbXVf
dG9wICkKLSAgICB7Ci0gICAgICAgIGlmICggcmFuZ2VfdG9wID4gaW9tbXVf
dG9wICkKLSAgICAgICAgICAgIHJhbmdlX3RvcCA9IGlvbW11X3RvcDsKLSAg
ICAgICAgbGVuZ3RoID0gcmFuZ2VfdG9wIC0gYmFzZTsKKyAgICBpZiAoIGV4
Y2x1c2lvbiApCisgICAgICAgIHJjID0gcmVzZXJ2ZV9pb21tdV9leGNsdXNp
b25fcmFuZ2UoaW9tbXUsIGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlIC8qIGFsbCAqLyk7
CisgICAgaWYgKCAhZXhjbHVzaW9uIHx8IHJjICkKKyAgICB7CisgICAgICAg
IHBhZGRyX3QgbGVuZ3RoID0gbGltaXQgKyBQQUdFX1NJWkUgLSBiYXNlOwor
CiAgICAgICAgIC8qIHJlc2VydmUgdW5pdHktbWFwcGVkIHBhZ2UgZW50cmll
cyBmb3IgZGV2aWNlICovCi0gICAgICAgIC8qIG5vdGU6IHRoZXNlIGVudHJp
ZXMgYXJlIHBhcnQgb2YgdGhlIGV4Y2x1c2lvbiByYW5nZSAqLwogICAgICAg
ICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCBiZGYs
IGJhc2UsIGxlbmd0aCwgaXcsIGlyKSA/OgogICAgICAgICAgICAgIHJlc2Vy
dmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2Uoc2VnLCByZXEsIGJhc2UsIGxlbmd0
aCwgaXcsIGlyKTsKLQotICAgICAgICAvKiBwdXNoICdiYXNlJyBqdXN0IG91
dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNzIHNwYWNlICovCi0gICAgICAgIGJh
c2UgPSBpb21tdV90b3A7CiAgICAgfQotCi0gICAgLyogcmVnaXN0ZXIgSU9N
TVUgZXhjbHVzaW9uIHJhbmdlIHNldHRpbmdzIGZvciBkZXZpY2UgKi8KLSAg
ICBpZiAoICFyYyAmJiBsaW1pdCA+PSBpb21tdV90b3AgICkKKyAgICBlbHNl
CiAgICAgewotICAgICAgICByYyA9IHJlc2VydmVfaW9tbXVfZXhjbHVzaW9u
X3JhbmdlKGlvbW11LCBiYXNlLCBsaW1pdCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAvKiBhbGwgKi8sIGl3
LCBpcik7CiAgICAgICAgIGl2cnNfbWFwcGluZ3NbYmRmXS5kdGVfYWxsb3df
ZXhjbHVzaW9uID0gdHJ1ZTsKICAgICAgICAgaXZyc19tYXBwaW5nc1tyZXFd
LmR0ZV9hbGxvd19leGNsdXNpb24gPSB0cnVlOwogICAgIH0KQEAgLTI3Niw1
MyArMjY1LDQyIEBAIHN0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX2V4Y2x1
c2lvbl9yYW4KICAgICByZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgX19p
bml0IHJlZ2lzdGVyX2V4Y2x1c2lvbl9yYW5nZV9mb3JfaW9tbXVfZGV2aWNl
cygKLSAgICBzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwKLSAgICB1bnNpZ25l
ZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQsIHU4IGl3LCB1OCBp
cikKK3N0YXRpYyBpbnQgX19pbml0IHJlZ2lzdGVyX3JhbmdlX2Zvcl9pb21t
dV9kZXZpY2VzKAorICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCBwYWRk
cl90IGJhc2UsIHBhZGRyX3QgbGltaXQsCisgICAgYm9vbCBpdywgYm9vbCBp
ciwgYm9vbCBleGNsdXNpb24pCiB7Ci0gICAgdW5zaWduZWQgbG9uZyByYW5n
ZV90b3AsIGlvbW11X3RvcCwgbGVuZ3RoOworICAgIC8qIG5vdGU6ICdsaW1p
dCcgcGFyYW1ldGVyIGlzIGFzc3VtZWQgdG8gYmUgcGFnZS1hbGlnbmVkICov
CisgICAgcGFkZHJfdCBsZW5ndGggPSBsaW1pdCArIFBBR0VfU0laRSAtIGJh
c2U7CiAgICAgdW5zaWduZWQgaW50IGJkZjsKICAgICB1MTYgcmVxOwotICAg
IGludCByYyA9IDA7CisgICAgaW50IHJjOwogCi0gICAgLyogaXMgcGFydCBv
ZiBleGNsdXNpb24gcmFuZ2UgaW5zaWRlIG9mIElPTU1VIHZpcnR1YWwgYWRk
cmVzcyBzcGFjZT8gKi8KLSAgICAvKiBub3RlOiAnbGltaXQnIHBhcmFtZXRl
ciBpcyBhc3N1bWVkIHRvIGJlIHBhZ2UtYWxpZ25lZCAqLwotICAgIHJhbmdl
X3RvcCA9IGxpbWl0ICsgUEFHRV9TSVpFOwotICAgIGlvbW11X3RvcCA9IG1h
eF9wYWdlICogUEFHRV9TSVpFOwotICAgIGlmICggYmFzZSA8IGlvbW11X3Rv
cCApCi0gICAgewotICAgICAgICBpZiAoIHJhbmdlX3RvcCA+IGlvbW11X3Rv
cCApCi0gICAgICAgICAgICByYW5nZV90b3AgPSBpb21tdV90b3A7Ci0gICAg
ICAgIGxlbmd0aCA9IHJhbmdlX3RvcCAtIGJhc2U7Ci0gICAgICAgIC8qIHJl
c2VydmUgci93IHVuaXR5LW1hcHBlZCBwYWdlIGVudHJpZXMgZm9yIGRldmlj
ZXMgKi8KLSAgICAgICAgLyogbm90ZTogdGhlc2UgZW50cmllcyBhcmUgcGFy
dCBvZiB0aGUgZXhjbHVzaW9uIHJhbmdlICovCi0gICAgICAgIGZvciAoIGJk
ZiA9IDA7ICFyYyAmJiBiZGYgPCBpdnJzX2JkZl9lbnRyaWVzOyBiZGYrKyAp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGlmICggaW9tbXUgPT0gZmluZF9p
b21tdV9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIGJkZikgKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIHJlcSA9IGdldF9pdnJzX21hcHBpbmdz
KGlvbW11LT5zZWcpW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKLSAgICAgICAg
ICAgICAgICByYyA9IHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9kZXZpY2UoaW9t
bXUtPnNlZywgYmRmLCBiYXNlLCBsZW5ndGgsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3LCBpcikgPzoK
LSAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVfdW5pdHlfbWFwX2Zvcl9k
ZXZpY2UoaW9tbXUtPnNlZywgcmVxLCBiYXNlLCBsZW5ndGgsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl3
LCBpcik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICAv
KiBwdXNoICdiYXNlJyBqdXN0IG91dHNpZGUgb2YgdmlydHVhbCBhZGRyZXNz
IHNwYWNlICovCi0gICAgICAgIGJhc2UgPSBpb21tdV90b3A7CisgICAgaWYg
KCBleGNsdXNpb24gKQorICAgIHsKKyAgICAgICAgcmMgPSByZXNlcnZlX2lv
bW11X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsIHRydWUg
LyogYWxsICovKTsKKyAgICAgICAgaWYgKCAhcmMgKQorICAgICAgICAgICAg
cmV0dXJuIDA7CiAgICAgfQogCi0gICAgLyogcmVnaXN0ZXIgSU9NTVUgZXhj
bHVzaW9uIHJhbmdlIHNldHRpbmdzICovCi0gICAgaWYgKCAhcmMgJiYgbGlt
aXQgPj0gaW9tbXVfdG9wICkKLSAgICAgICAgcmMgPSByZXNlcnZlX2lvbW11
X2V4Y2x1c2lvbl9yYW5nZShpb21tdSwgYmFzZSwgbGltaXQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAvKiBh
bGwgKi8sIGl3LCBpcik7CisgICAgLyogcmVzZXJ2ZSB1bml0eS1tYXBwZWQg
cGFnZSBlbnRyaWVzIGZvciBkZXZpY2VzICovCisgICAgZm9yICggYmRmID0g
cmMgPSAwOyAhcmMgJiYgYmRmIDwgaXZyc19iZGZfZW50cmllczsgYmRmKysg
KQorICAgIHsKKyAgICAgICAgaWYgKCBpb21tdSAhPSBmaW5kX2lvbW11X2Zv
cl9kZXZpY2UoaW9tbXUtPnNlZywgYmRmKSApCisgICAgICAgICAgICBjb250
aW51ZTsKKworICAgICAgICByZXEgPSBnZXRfaXZyc19tYXBwaW5ncyhpb21t
dS0+c2VnKVtiZGZdLmR0ZV9yZXF1ZXN0b3JfaWQ7CisgICAgICAgIHJjID0g
cmVzZXJ2ZV91bml0eV9tYXBfZm9yX2RldmljZShpb21tdS0+c2VnLCBiZGYs
IGJhc2UsIGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGl3LCBpcikgPzoKKyAgICAgICAgICAgICByZXNlcnZl
X3VuaXR5X21hcF9mb3JfZGV2aWNlKGlvbW11LT5zZWcsIHJlcSwgYmFzZSwg
bGVuZ3RoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaXcsIGlyKTsKKyAgICB9CiAKICAgICByZXR1cm4gcmM7CiB9CiAK
IHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGVjdCgK
ICAgICBjb25zdCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9j
aywKLSAgICB1bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGlt
aXQsIHU4IGl3LCB1OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3Qg
bGltaXQsIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewog
ICAgIHUxNiBiZGY7CiAKQEAgLTMzMywxMiArMzExLDEyIEBAIHN0YXRpYyBp
bnQgX19pbml0IHBhcnNlX2l2bWRfZGV2aWNlX3NlbGUKICAgICAgICAgcmV0
dXJuIC1FTk9ERVY7CiAgICAgfQogCi0gICAgcmV0dXJuIHJlZ2lzdGVyX2V4
Y2x1c2lvbl9yYW5nZV9mb3JfZGV2aWNlKGJkZiwgYmFzZSwgbGltaXQsIGl3
LCBpcik7CisgICAgcmV0dXJuIHJlZ2lzdGVyX3JhbmdlX2Zvcl9kZXZpY2Uo
YmRmLCBiYXNlLCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQogCiBz
dGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9yYW5nZSgKICAg
ICBjb25zdCBzdHJ1Y3QgYWNwaV9pdnJzX21lbW9yeSAqaXZtZF9ibG9jaywK
LSAgICB1bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGxvbmcgbGltaXQs
IHU4IGl3LCB1OCBpcikKKyAgICBwYWRkcl90IGJhc2UsIHBhZGRyX3QgbGlt
aXQsIGJvb2wgaXcsIGJvb2wgaXIsIGJvb2wgZXhjbHVzaW9uKQogewogICAg
IHVuc2lnbmVkIGludCBmaXJzdF9iZGYsIGxhc3RfYmRmLCBiZGY7CiAgICAg
aW50IGVycm9yOwpAQCAtMzYwLDE1ICszMzgsMTUgQEAgc3RhdGljIGludCBf
X2luaXQgcGFyc2VfaXZtZF9kZXZpY2VfcmFuZwogICAgIH0KIAogICAgIGZv
ciAoIGJkZiA9IGZpcnN0X2JkZiwgZXJyb3IgPSAwOyAoYmRmIDw9IGxhc3Rf
YmRmKSAmJiAhZXJyb3I7IGJkZisrICkKLSAgICAgICAgZXJyb3IgPSByZWdp
c3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2RldmljZSgKLSAgICAgICAgICAg
IGJkZiwgYmFzZSwgbGltaXQsIGl3LCBpcik7CisgICAgICAgIGVycm9yID0g
cmVnaXN0ZXJfcmFuZ2VfZm9yX2RldmljZSgKKyAgICAgICAgICAgIGJkZiwg
YmFzZSwgbGltaXQsIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIHJldHVy
biBlcnJvcjsKIH0KIAogc3RhdGljIGludCBfX2luaXQgcGFyc2VfaXZtZF9k
ZXZpY2VfaW9tbXUoCiAgICAgY29uc3Qgc3RydWN0IGFjcGlfaXZyc19tZW1v
cnkgKml2bWRfYmxvY2ssCi0gICAgdW5zaWduZWQgbG9uZyBiYXNlLCB1bnNp
Z25lZCBsb25nIGxpbWl0LCB1OCBpdywgdTggaXIpCisgICAgcGFkZHJfdCBi
YXNlLCBwYWRkcl90IGxpbWl0LCBib29sIGl3LCBib29sIGlyLCBib29sIGV4
Y2x1c2lvbikKIHsKICAgICBpbnQgc2VnID0gMDsgLyogWFhYICovCiAgICAg
c3RydWN0IGFtZF9pb21tdSAqaW9tbXU7CkBAIC0zODMsMTQgKzM2MSwxNCBA
QCBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2RldmljZV9pb21tCiAg
ICAgICAgIHJldHVybiAtRU5PREVWOwogICAgIH0KIAotICAgIHJldHVybiBy
ZWdpc3Rlcl9leGNsdXNpb25fcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCi0g
ICAgICAgIGlvbW11LCBiYXNlLCBsaW1pdCwgaXcsIGlyKTsKKyAgICByZXR1
cm4gcmVnaXN0ZXJfcmFuZ2VfZm9yX2lvbW11X2RldmljZXMoCisgICAgICAg
IGlvbW11LCBiYXNlLCBsaW1pdCwgaXcsIGlyLCBleGNsdXNpb24pOwogfQog
CiBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pdm1kX2Jsb2NrKGNvbnN0IHN0
cnVjdCBhY3BpX2l2cnNfbWVtb3J5ICppdm1kX2Jsb2NrKQogewogICAgIHVu
c2lnbmVkIGxvbmcgc3RhcnRfYWRkciwgbWVtX2xlbmd0aCwgYmFzZSwgbGlt
aXQ7Ci0gICAgdTggaXcsIGlyOworICAgIGJvb2wgaXcgPSB0cnVlLCBpciA9
IHRydWUsIGV4Y2x1c2lvbiA9IGZhbHNlOwogCiAgICAgaWYgKCBpdm1kX2Js
b2NrLT5oZWFkZXIubGVuZ3RoIDwgc2l6ZW9mKCppdm1kX2Jsb2NrKSApCiAg
ICAgewpAQCAtNDA3LDEzICszODUsMTEgQEAgc3RhdGljIGludCBfX2luaXQg
cGFyc2VfaXZtZF9ibG9jayhjb25zdAogICAgICAgICAgICAgICAgICAgICBp
dm1kX2Jsb2NrLT5oZWFkZXIudHlwZSwgc3RhcnRfYWRkciwgbWVtX2xlbmd0
aCk7CiAKICAgICBpZiAoIGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFD
UElfSVZNRF9FWENMVVNJT05fUkFOR0UgKQotICAgICAgICBpdyA9IGlyID0g
SU9NTVVfQ09OVFJPTF9FTkFCTEVEOworICAgICAgICBleGNsdXNpb24gPSB0
cnVlOwogICAgIGVsc2UgaWYgKCBpdm1kX2Jsb2NrLT5oZWFkZXIuZmxhZ3Mg
JiBBQ1BJX0lWTURfVU5JVFkgKQogICAgIHsKLSAgICAgICAgaXcgPSBpdm1k
X2Jsb2NrLT5oZWFkZXIuZmxhZ3MgJiBBQ1BJX0lWTURfUkVBRCA/Ci0gICAg
ICAgICAgICBJT01NVV9DT05UUk9MX0VOQUJMRUQgOiBJT01NVV9DT05UUk9M
X0RJU0FCTEVEOwotICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5m
bGFncyAmIEFDUElfSVZNRF9XUklURSA/Ci0gICAgICAgICAgICBJT01NVV9D
T05UUk9MX0VOQUJMRUQgOiBJT01NVV9DT05UUk9MX0RJU0FCTEVEOworICAg
ICAgICBpdyA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFncyAmIEFDUElfSVZN
RF9SRUFEOworICAgICAgICBpciA9IGl2bWRfYmxvY2stPmhlYWRlci5mbGFn
cyAmIEFDUElfSVZNRF9XUklURTsKICAgICB9CiAgICAgZWxzZQogICAgIHsK
QEAgLTQyNCwyMCArNDAwLDIwIEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNl
X2l2bWRfYmxvY2soY29uc3QKICAgICBzd2l0Y2goIGl2bWRfYmxvY2stPmhl
YWRlci50eXBlICkKICAgICB7CiAgICAgY2FzZSBBQ1BJX0lWUlNfVFlQRV9N
RU1PUllfQUxMOgotICAgICAgICByZXR1cm4gcmVnaXN0ZXJfZXhjbHVzaW9u
X3JhbmdlX2Zvcl9hbGxfZGV2aWNlcygKLSAgICAgICAgICAgIGJhc2UsIGxp
bWl0LCBpdywgaXIpOworICAgICAgICByZXR1cm4gcmVnaXN0ZXJfcmFuZ2Vf
Zm9yX2FsbF9kZXZpY2VzKAorICAgICAgICAgICAgYmFzZSwgbGltaXQsIGl3
LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGNhc2UgQUNQSV9JVlJTX1RZUEVf
TUVNT1JZX09ORToKLSAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNl
X3NlbGVjdChpdm1kX2Jsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywgaXIpOworICAgICAg
ICByZXR1cm4gcGFyc2VfaXZtZF9kZXZpY2Vfc2VsZWN0KGl2bWRfYmxvY2ss
IGJhc2UsIGxpbWl0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGl3LCBpciwgZXhjbHVzaW9uKTsKIAogICAgIGNhc2UgQUNQ
SV9JVlJTX1RZUEVfTUVNT1JZX1JBTkdFOgotICAgICAgICByZXR1cm4gcGFy
c2VfaXZtZF9kZXZpY2VfcmFuZ2UoaXZtZF9ibG9jaywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UsIGxpbWl0LCBpdywg
aXIpOworICAgICAgICByZXR1cm4gcGFyc2VfaXZtZF9kZXZpY2VfcmFuZ2Uo
aXZtZF9ibG9jaywgYmFzZSwgbGltaXQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpdywgaXIsIGV4Y2x1c2lvbik7CiAKICAg
ICBjYXNlIEFDUElfSVZSU19UWVBFX01FTU9SWV9JT01NVToKLSAgICAgICAg
cmV0dXJuIHBhcnNlX2l2bWRfZGV2aWNlX2lvbW11KGl2bWRfYmxvY2ssCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLCBs
aW1pdCwgaXcsIGlyKTsKKyAgICAgICAgcmV0dXJuIHBhcnNlX2l2bWRfZGV2
aWNlX2lvbW11KGl2bWRfYmxvY2ssIGJhc2UsIGxpbWl0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXcsIGlyLCBleGNsdXNp
b24pOwogCiAgICAgZGVmYXVsdDoKICAgICAgICAgQU1EX0lPTU1VX0RFQlVH
KCJJVk1EIEVycm9yOiBJbnZhbGlkIEJsb2NrIFR5cGUhXG4iKTsKLS0tIGEv
eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYwor
KysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21t
dS5jCkBAIC0yNDYsNiArMjQ2LDggQEAgaW50IGFtZF9pb21tdV9hbGxvY19y
b290KHN0cnVjdCBkb21haW4gKgogICAgIHJldHVybiAwOwogfQogCitpbnQg
X19yZWFkX21vc3RseSBhbWRfaW9tbXVfbWluX3BhZ2luZ19tb2RlID0gMTsK
Kwogc3RhdGljIGludCBhbWRfaW9tbXVfZG9tYWluX2luaXQoc3RydWN0IGRv
bWFpbiAqZCkKIHsKICAgICBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRv
bV9pb21tdShkKTsKQEAgLTI1NywxMSArMjU5LDEzIEBAIHN0YXRpYyBpbnQg
YW1kX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdAogICAgICAqIC0gSFZNIGNv
dWxkIGluIHByaW5jaXBsZSB1c2UgMyBvciA0IGRlcGVuZGluZyBvbiBob3cg
bXVjaCBndWVzdAogICAgICAqICAgcGh5c2ljYWwgYWRkcmVzcyBzcGFjZSB3
ZSBnaXZlIGl0LCBidXQgdGhpcyBpc24ndCBrbm93biB5ZXQgc28gdXNlIDQK
ICAgICAgKiAgIHVuaWxhdGVyYWxseS4KKyAgICAgKiAtIFVuaXR5IG1hcHMg
bWF5IHJlcXVpcmUgYW4gZXZlbiBoaWdoZXIgbnVtYmVyLgogICAgICAqLwot
ICAgIGhkLT5hcmNoLmFtZC5wYWdpbmdfbW9kZSA9IGFtZF9pb21tdV9nZXRf
cGFnaW5nX21vZGUoCi0gICAgICAgIGlzX2h2bV9kb21haW4oZCkKLSAgICAg
ICAgPyAxdWwgPDwgKERFRkFVTFRfRE9NQUlOX0FERFJFU1NfV0lEVEggLSBQ
QUdFX1NISUZUKQotICAgICAgICA6IGdldF91cHBlcl9tZm5fYm91bmQoKSAr
IDEpOworICAgIGhkLT5hcmNoLmFtZC5wYWdpbmdfbW9kZSA9IG1heChhbWRf
aW9tbXVfZ2V0X3BhZ2luZ19tb2RlKAorICAgICAgICAgICAgaXNfaHZtX2Rv
bWFpbihkKQorICAgICAgICAgICAgPyAxdWwgPDwgKERFRkFVTFRfRE9NQUlO
X0FERFJFU1NfV0lEVEggLSBQQUdFX1NISUZUKQorICAgICAgICAgICAgOiBn
ZXRfdXBwZXJfbWZuX2JvdW5kKCkgKyAxKSwKKyAgICAgICAgYW1kX2lvbW11
X21pbl9wYWdpbmdfbW9kZSk7CiAKICAgICByZXR1cm4gMDsKIH0K

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-7.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-7.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBpbnRyb2R1Y2UgcDJtX2lzX3NwZWNpYWwoKQoKU2VlaW5n
IHRoZSBzaW1pbGFyaXR5IG9mIGdyYW50LCBmb3JlaWduLCBhbmQgKHN1YnNl
cXVlbnRseSkgZGlyZWN0LU1NSU8KaGFuZGxpbmcsIGludHJvZHVjZSBhIG5l
dyBQMk0gdHlwZSBncm91cCBuYW1lZCAic3BlY2lhbCIgKGFzIGluICJuZWVk
aW5nCnNwZWNpYWwgYWNjZXNzb3JzIHRvIGNyZWF0ZS9kZXN0cm95IikuCgpB
bHNvIHVzZSAtRVBFUk0gaW5zdGVhZCBvZiBvdGhlciBlcnJvciBjb2RlcyBv
biB0aGUgdHdvIGRvbWFpbl9jcmFzaCgpCnBhdGhzIHRvdWNoZWQuCgpUaGlz
IGlzIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgotLS0Kdjg6IE5ldywgc3BsaXQgZnJvbSBz
dWJzZXF1ZW50IHBhdGNoLgoKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5j
CisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtODE3LDcgKzgxNyw3
IEBAIHAybV9yZW1vdmVfcGFnZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAog
ICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxVUwgPDwgcGFnZV9vcmRlcik7
IGkrKyApCiAgICAgICAgIHsKICAgICAgICAgICAgIHAybS0+Z2V0X2VudHJ5
KHAybSwgZ2ZuX2FkZChnZm4sIGkpLCAmdCwgJmEsIDAsIE5VTEwsIE5VTEwp
OwotICAgICAgICAgICAgaWYgKCAhcDJtX2lzX2dyYW50KHQpICYmICFwMm1f
aXNfc2hhcmVkKHQpICYmICFwMm1faXNfZm9yZWlnbih0KSApCisgICAgICAg
ICAgICBpZiAoICFwMm1faXNfc3BlY2lhbCh0KSAmJiAhcDJtX2lzX3NoYXJl
ZCh0KSApCiAgICAgICAgICAgICAgICAgc2V0X2dwZm5fZnJvbV9tZm4obWZu
X3gobWZuKSArIGksIElOVkFMSURfTTJQX0VOVFJZKTsKICAgICAgICAgfQog
ICAgIH0KQEAgLTk1NCwxMyArOTU0LDEzIEBAIGd1ZXN0X3BoeXNtYXBfYWRk
X2VudHJ5KHN0cnVjdCBkb21haW4gKmQKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmb3QsICZhLCAwLCBOVUxMLCBOVUxMKTsKICAgICAg
ICAgICAgIEFTU0VSVCghcDJtX2lzX3NoYXJlZChvdCkpOwogICAgICAgICB9
Ci0gICAgICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8fCBwMm1faXNfZm9y
ZWlnbihvdCkgKQorICAgICAgICBpZiAoIHAybV9pc19zcGVjaWFsKG90KSAp
CiAgICAgICAgIHsKLSAgICAgICAgICAgIC8qIFJlYWxseSBzaG91bGRuJ3Qg
YmUgdW5tYXBwaW5nIGdyYW50L2ZvcmVpZ24gbWFwcyB0aGlzIHdheSAqLwor
ICAgICAgICAgICAgLyogRG9uJ3QgcGVybWl0IHVubWFwcGluZyBncmFudC9m
b3JlaWduIHRoaXMgd2F5LiAqLwogICAgICAgICAgICAgZG9tYWluX2NyYXNo
KGQpOwogICAgICAgICAgICAgcDJtX3VubG9jayhwMm0pOwogICAgICAgICAg
ICAgCi0gICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICAgICAgICAg
IHJldHVybiAtRVBFUk07CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAo
IHAybV9pc19yYW0ob3QpICYmICFwMm1faXNfcGFnZWQob3QpICkKICAgICAg
ICAgewpAQCAtMTA1Myw4ICsxMDUzLDcgQEAgaW50IHAybV9jaGFuZ2VfdHlw
ZV9vbmUoc3RydWN0IGRvbWFpbiAqZAogICAgIHN0cnVjdCBwMm1fZG9tYWlu
ICpwMm0gPSBwMm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgaW50IHJjOwogCi0g
ICAgQlVHX09OKHAybV9pc19ncmFudChvdCkgfHwgcDJtX2lzX2dyYW50KG50
KSk7Ci0gICAgQlVHX09OKHAybV9pc19mb3JlaWduKG90KSB8fCBwMm1faXNf
Zm9yZWlnbihudCkpOworICAgIEJVR19PTihwMm1faXNfc3BlY2lhbChvdCkg
fHwgcDJtX2lzX3NwZWNpYWwobnQpKTsKIAogICAgIGdmbl9sb2NrKHAybSwg
Z2ZuLCAwKTsKIApAQCAtMTMwMCwxMSArMTI5OSwxMSBAQCBzdGF0aWMgaW50
IHNldF90eXBlZF9wMm1fZW50cnkoc3RydWN0IGRvCiAgICAgICAgIGdmbl91
bmxvY2socDJtLCBnZm4sIG9yZGVyKTsKICAgICAgICAgcmV0dXJuIGN1cl9v
cmRlciArIDE7CiAgICAgfQotICAgIGlmICggcDJtX2lzX2dyYW50KG90KSB8
fCBwMm1faXNfZm9yZWlnbihvdCkgKQorICAgIGlmICggcDJtX2lzX3NwZWNp
YWwob3QpICkKICAgICB7CiAgICAgICAgIGdmbl91bmxvY2socDJtLCBnZm4s
IG9yZGVyKTsKICAgICAgICAgZG9tYWluX2NyYXNoKGQpOwotICAgICAgICBy
ZXR1cm4gLUVOT0VOVDsKKyAgICAgICAgcmV0dXJuIC1FUEVSTTsKICAgICB9
CiAgICAgZWxzZSBpZiAoIHAybV9pc19yYW0ob3QpICkKICAgICB7Ci0tLSBh
L3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1ZGUv
YXNtLXg4Ni9wMm0uaApAQCAtMTU0LDYgKzE1NCwxMCBAQCB0eXBlZGVmIHVu
c2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8IHAybV90b19tYXNrKHAybV9yYW1fbG9nZGlydHkpICkKICNk
ZWZpbmUgUDJNX1NIQVJFRF9UWVBFUyAgIChwMm1fdG9fbWFzayhwMm1fcmFt
X3NoYXJlZCkpCiAKKy8qIFR5cGVzIGVzdGFibGlzaGVkL2NsZWFuZWQgdXAg
dmlhIHNwZWNpYWwgYWNjZXNzb3JzLiAqLworI2RlZmluZSBQMk1fU1BFQ0lB
TF9UWVBFUyAoUDJNX0dSQU5UX1RZUEVTIHwgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21hcF9mb3JlaWduKSkKKwog
LyogVmFsaWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQgd2l0
aCBhICh2YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9NRk5f
VFlQRVMgKFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhwMm1f
bW1pb19kaXJlY3QpIFwKQEAgLTE4Miw2ICsxODYsNyBAQCB0eXBlZGVmIHVu
c2lnbmVkIGludCBwMm1fcXVlcnlfdDsKICNkZWZpbmUgcDJtX2lzX3BhZ2Vk
KF90KSAgICAocDJtX3RvX21hc2soX3QpICYgUDJNX1BBR0VEX1RZUEVTKQog
I2RlZmluZSBwMm1faXNfc2hhcmFibGUoX3QpIChwMm1fdG9fbWFzayhfdCkg
JiBQMk1fU0hBUkFCTEVfVFlQRVMpCiAjZGVmaW5lIHAybV9pc19zaGFyZWQo
X3QpICAgKHAybV90b19tYXNrKF90KSAmIFAyTV9TSEFSRURfVFlQRVMpCisj
ZGVmaW5lIHAybV9pc19zcGVjaWFsKF90KSAgKHAybV90b19tYXNrKF90KSAm
IFAyTV9TUEVDSUFMX1RZUEVTKQogI2RlZmluZSBwMm1faXNfYnJva2VuKF90
KSAgIChwMm1fdG9fbWFzayhfdCkgJiBQMk1fQlJPS0VOX1RZUEVTKQogI2Rl
ZmluZSBwMm1faXNfZm9yZWlnbihfdCkgIChwMm1fdG9fbWFzayhfdCkgJiBw
Mm1fdG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pKQogCg==

--=separator
Content-Type: application/octet-stream; name="xsa378/xsa378-8.patch"
Content-Disposition: attachment; filename="xsa378/xsa378-8.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvcDJtOiBndWFyZCAoaW4gcGFydGljdWxhcikgaWRlbnRpdHkgbWFw
cGluZyBlbnRyaWVzCgpTdWNoIGVudHJpZXMsIGNyZWF0ZWQgYnkgc2V0X2lk
ZW50aXR5X3AybV9lbnRyeSgpLCBzaG91bGQgb25seSBiZQpkZXN0cm95ZWQg
YnkgY2xlYXJfaWRlbnRpdHlfcDJtX2VudHJ5KCkuIEhvd2V2ZXIsIHNpbWls
YXJseSwgZW50cmllcwpjcmVhdGVkIGJ5IHNldF9tbWlvX3AybV9lbnRyeSgp
IHNob3VsZCBvbmx5IGJlIHRvcm4gZG93biBieQpjbGVhcl9tbWlvX3AybV9l
bnRyeSgpLCBzbyB0aGUgbG9naWMgZ2V0cyBiYXNlZCB1cG9uIHAybV9tbWlv
X2RpcmVjdCBhcwp0aGUgZW50cnkgdHlwZSAoc2VwYXJhdGlvbiBiZXR3ZWVu
ICJvcmRpbmFyeSIgYW5kIDE6MSBtYXBwaW5ncyB3b3VsZApyZXF1aXJlIGEg
ZnVydGhlciBpbmRpY2F0b3IgdG8gdGVsbCBhcGFydCB0aGUgdHdvKS4KCkFz
IHRvIHRoZSBndWVzdF9yZW1vdmVfcGFnZSgpIGNoYW5nZSwgY29tbWl0IDQ4
ZGZiMjk3YTIwYSAoIng4Ni9QVkg6CmFsbG93IGd1ZXN0X3JlbW92ZV9wYWdl
IHRvIHJlbW92ZSBwMm1fbW1pb19kaXJlY3QgcGFnZXMiKSwgd2hpY2gKaW50
cm9kdWNlZCB0aGUgY2FsbCB0byBjbGVhcl9tbWlvX3AybV9lbnRyeSgpLCBj
bGFpbWVkIHRoaXMgd2FzIGRvbmUgZm9yCmh3ZG9tIG9ubHkgd2l0aG91dCB0
aGlzIGFjdHVhbGx5IGhhdmluZyBiZWVuIHRoZSBjYXNlLiBIb3dldmVyLCB0
aGlzCmNvZGUgc2hvdWxkbid0IGJlIHRoZXJlIGluIHRoZSBmaXJzdCBwbGFj
ZSwgYXMgTU1JTyBlbnRyaWVzIHNob3VsZG4ndCBiZQpkcm9wcGVkIHRoaXMg
d2F5LiBBdm9pZCB0cmlnZ2VyaW5nIHRoZSB3YXJuaW5nIGFnYWluIHRoYXQg
NDhkZmIyOTdhMjBhCnNpbGVuY2VkIGJ5IGFuIGFkanVzdG1lbnQgdG8geGVu
bWVtX2FkZF90b19waHlzbWFwX29uZSgpIGluc3RlYWQuCgpOb3RlIHRoYXQg
Z3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZCgpIGdldHMg
dGlnaHRlbmVkIGJleW9uZAp0aGUgaW1tZWRpYXRlIHB1cnBvc2Ugb2YgdGhp
cyBjaGFuZ2UuCgpOb3RlIGFsc28gdGhhdCBJIGRpZG4ndCBpbnNwZWN0IGNv
ZGUgd2hpY2ggaXNuJ3Qgc2VjdXJpdHkgc3VwcG9ydGVkLAplLmcuIHNoYXJp
bmcsIHBhZ2luZywgb3IgYWx0cDJtLgoKVGhpcyBpcyBDVkUtMjAyMS0yODY5
NCAvIHBhcnQgb2YgWFNBLTM3OC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IFBhdWwgRHVy
cmFudCA8cGF1bEB4ZW4ub3JnPgotLS0Kdjg6IFNwbGl0IG9mZiBpbnRyb2R1
Y3Rpb24gb2YgcDJtX2lzX3NwZWNpYWwoKS4Kdjc6IFJlLWJhc2UuCnY2OiBB
bHNvIGFkanVzdCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKCkuIEZ1bGx5
IGRyb3AgcDJtX21taW9fZGlyZWN0CiAgICBzcGVjaWFsIGhhbmRsaW5nIGZy
b20gZ3Vlc3RfcmVtb3ZlX3BhZ2UoKTsganVzdCByZXR1cm4gYW4gZXJyb3Iu
CiAgICBNYWtlIGNsZWFyX21taW9fcDJtX2VudHJ5KCkgc3RhdGljLgp2NTog
TmV3LgotLS0KQmFja3BvcnRpbmcgbm90ZTogV2hpbGUgbGlrZWx5IG5vdGlj
YWJsZSBieSBwYXRjaCBjb25mbGljdHMgYW55d2F5LCB0aGlzCmRlcGVuZHMg
b24gb25lIG9yIGJvdGggb2YgYTZiMDUxYTg3YTU4ICgieDg2L3AybTogZG9u
J3QgaWdub3JlCnAybV9yZW1vdmVfcGFnZSgpJ3MgcmV0dXJuIHZhbHVlIikg
YW5kIGM2NWVhMTZkYmNhZiAoIng4Ni9wMm06IGRvbid0CmFzc2VydCB0aGF0
IHRoZSBwYXNzZWQgaW4gTUZOIG1hdGNoZXMgZm9yIGEgcmVtb3ZlIikuCgot
LS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVuL2FyY2gveDg2
L21tL3AybS5jCkBAIC04MDUsNyArODA1LDggQEAgcDJtX3JlbW92ZV9wYWdl
KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmY3VyX29yZGVyLCBOVUxMKTsKIAog
ICAgICAgICBpZiAoIHAybV9pc192YWxpZCh0KSAmJgotICAgICAgICAgICAg
ICghbWZuX3ZhbGlkKG1mbikgfHwgIW1mbl9lcShtZm5fYWRkKG1mbiwgaSks
IG1mbl9yZXR1cm4pKSApCisgICAgICAgICAgICAgKCFtZm5fdmFsaWQobWZu
KSB8fCB0ID09IHAybV9tbWlvX2RpcmVjdCB8fAorICAgICAgICAgICAgICAh
bWZuX2VxKG1mbl9hZGQobWZuLCBpKSwgbWZuX3JldHVybikpICkKICAgICAg
ICAgICAgIHJldHVybiAtRUlMU0VROwogCiAgICAgICAgIGkgKz0gKDFVTCA8
PCBjdXJfb3JkZXIpIC0KQEAgLTkxMiw3ICs5MTMsNyBAQCBndWVzdF9waHlz
bWFwX2FkZF9lbnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgaWYgKCBwMm1f
aXNfZm9yZWlnbih0KSApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCi0g
ICAgaWYgKCAhbWZuX3ZhbGlkKG1mbikgKQorICAgIGlmICggIW1mbl92YWxp
ZChtZm4pIHx8IHQgPT0gcDJtX21taW9fZGlyZWN0ICkKICAgICB7CiAgICAg
ICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOwogICAgICAgICByZXR1cm4gLUVJ
TlZBTDsKQEAgLTk1Niw3ICs5NTcsNyBAQCBndWVzdF9waHlzbWFwX2FkZF9l
bnRyeShzdHJ1Y3QgZG9tYWluICpkCiAgICAgICAgIH0KICAgICAgICAgaWYg
KCBwMm1faXNfc3BlY2lhbChvdCkgKQogICAgICAgICB7Ci0gICAgICAgICAg
ICAvKiBEb24ndCBwZXJtaXQgdW5tYXBwaW5nIGdyYW50L2ZvcmVpZ24gdGhp
cyB3YXkuICovCisgICAgICAgICAgICAvKiBEb24ndCBwZXJtaXQgdW5tYXBw
aW5nIGdyYW50L2ZvcmVpZ24vZGlyZWN0LU1NSU8gdGhpcyB3YXkuICovCiAg
ICAgICAgICAgICBkb21haW5fY3Jhc2goZCk7CiAgICAgICAgICAgICBwMm1f
dW5sb2NrKHAybSk7CiAgICAgICAgICAgICAKQEAgLTEzNjQsOCArMTM2NSw4
IEBAIGludCBzZXRfbW1pb19wMm1fZW50cnkoc3RydWN0IGRvbWFpbiAqZCwK
ICAqICAgIG9yZGVyKzEgIGZvciBjYWxsZXIgdG8gcmV0cnkgd2l0aCBvcmRl
ciAoZ3VhcmFudGVlZCBzbWFsbGVyIHRoYW4KICAqICAgICAgICAgICAgIHRo
ZSBvcmRlciB2YWx1ZSBwYXNzZWQgaW4pCiAgKi8KLWludCBjbGVhcl9tbWlv
X3AybV9lbnRyeShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBsb25nIGdm
bl9sLCBtZm5fdCBtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50IG9yZGVyKQorc3RhdGljIGludCBjbGVhcl9tbWlvX3AybV9l
bnRyeShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBsb25nIGdmbl9sLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBtZm4sIHVu
c2lnbmVkIGludCBvcmRlcikKIHsKICAgICBpbnQgcmMgPSAtRUlOVkFMOwog
ICAgIGdmbl90IGdmbiA9IF9nZm4oZ2ZuX2wpOwpAQCAtMjc2Niw3ICsyNzY3
LDkgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCiAKICAgICAv
KiBSZW1vdmUgcHJldmlvdXNseSBtYXBwZWQgcGFnZSBpZiBpdCB3YXMgcHJl
c2VudC4gKi8KICAgICBwcmV2X21mbiA9IGdldF9nZm4oZCwgZ2ZuX3goZ3Bm
biksICZwMm10KTsKLSAgICBpZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQor
ICAgIGlmICggcDJtdCA9PSBwMm1fbW1pb19kaXJlY3QgKQorICAgICAgICBy
YyA9IC1FUEVSTTsKKyAgICBlbHNlIGlmICggbWZuX3ZhbGlkKHByZXZfbWZu
KSApCiAgICAgewogICAgICAgICBpZiAoIGlzX3NwZWNpYWxfcGFnZShtZm5f
dG9fcGFnZShwcmV2X21mbikpICkKICAgICAgICAgICAgIC8qIFNwZWNpYWwg
cGFnZXMgYXJlIHNpbXBseSB1bmhvb2tlZCBmcm9tIHRoaXMgcGh5cyBzbG90
LiAqLwotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLXBvZC5jCisrKyBiL3hl
bi9hcmNoL3g4Ni9tbS9wMm0tcG9kLmMKQEAgLTEyOTksMTcgKzEyOTksMTcg
QEAgZ3Vlc3RfcGh5c21hcF9tYXJrX3BvcHVsYXRlX29uX2RlbWFuZChzdAog
CiAgICAgICAgIHAybS0+Z2V0X2VudHJ5KHAybSwgZ2ZuX2FkZChnZm4sIGkp
LCAmb3QsICZhLCAwLCAmY3VyX29yZGVyLCBOVUxMKTsKICAgICAgICAgbiA9
IDFVTCA8PCBtaW4ob3JkZXIsIGN1cl9vcmRlcik7Ci0gICAgICAgIGlmICgg
cDJtX2lzX3JhbShvdCkgKQorICAgICAgICBpZiAoIG90ID09IHAybV9wb3B1
bGF0ZV9vbl9kZW1hbmQgKQorICAgICAgICB7CisgICAgICAgICAgICAvKiBD
b3VudCBob3cgbWFueSBQb0QgZW50cmllcyB3ZSdsbCBiZSByZXBsYWNpbmcg
aWYgc3VjY2Vzc2Z1bCAqLworICAgICAgICAgICAgcG9kX2NvdW50ICs9IG47
CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoIG90ICE9IHAybV9pbnZh
bGlkICYmIG90ICE9IHAybV9tbWlvX2RtICkKICAgICAgICAgewogICAgICAg
ICAgICAgUDJNX0RFQlVHKCJnZm5fdG9fbWZuIHJldHVybmVkIHR5cGUgJWQh
XG4iLCBvdCk7CiAgICAgICAgICAgICByYyA9IC1FQlVTWTsKICAgICAgICAg
ICAgIGdvdG8gb3V0OwogICAgICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKCBv
dCA9PSBwMm1fcG9wdWxhdGVfb25fZGVtYW5kICkKLSAgICAgICAgewotICAg
ICAgICAgICAgLyogQ291bnQgaG93IG1hbiBQb0QgZW50cmllcyB3ZSdsbCBi
ZSByZXBsYWNpbmcgaWYgc3VjY2Vzc2Z1bCAqLwotICAgICAgICAgICAgcG9k
X2NvdW50ICs9IG47Ci0gICAgICAgIH0KICAgICB9CiAKICAgICAvKiBOb3cs
IGFjdHVhbGx5IGRvIHRoZSB0d28td2F5IG1hcHBpbmcgKi8KLS0tIGEveGVu
L2NvbW1vbi9tZW1vcnkuYworKysgYi94ZW4vY29tbW9uL21lbW9yeS5jCkBA
IC0zMzIsNyArMzMyLDcgQEAgaW50IGd1ZXN0X3JlbW92ZV9wYWdlKHN0cnVj
dCBkb21haW4gKmQsCiAgICAgfQogICAgIGlmICggcDJtdCA9PSBwMm1fbW1p
b19kaXJlY3QgKQogICAgIHsKLSAgICAgICAgcmMgPSBjbGVhcl9tbWlvX3Ay
bV9lbnRyeShkLCBnbWZuLCBtZm4sIFBBR0VfT1JERVJfNEspOworICAgICAg
ICByYyA9IC1FUEVSTTsKICAgICAgICAgZ290byBvdXRfcHV0X2dmbjsKICAg
ICB9CiAjZWxzZQpAQCAtMTg4OCw2ICsxODg4LDE1IEBAIGludCBjaGVja19n
ZXRfcGFnZV9mcm9tX2dmbihzdHJ1Y3QgZG9tYWkKICAgICAgICAgcmV0dXJu
IC1FQUdBSU47CiAgICAgfQogI2VuZGlmCisjaWZkZWYgQ09ORklHX1g4Ngor
ICAgIGlmICggcDJtdCA9PSBwMm1fbW1pb19kaXJlY3QgKQorICAgIHsKKyAg
ICAgICAgaWYgKCBwYWdlICkKKyAgICAgICAgICAgIHB1dF9wYWdlKHBhZ2Up
OworCisgICAgICAgIHJldHVybiAtRVBFUk07CisgICAgfQorI2VuZGlmCiAK
ICAgICBpZiAoICFwYWdlICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Ci0t
LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKKysrIGIveGVuL2luY2x1
ZGUvYXNtLXg4Ni9wMm0uaApAQCAtMTU2LDcgKzE1Niw4IEBAIHR5cGVkZWYg
dW5zaWduZWQgaW50IHAybV9xdWVyeV90OwogCiAvKiBUeXBlcyBlc3RhYmxp
c2hlZC9jbGVhbmVkIHVwIHZpYSBzcGVjaWFsIGFjY2Vzc29ycy4gKi8KICNk
ZWZpbmUgUDJNX1NQRUNJQUxfVFlQRVMgKFAyTV9HUkFOVF9UWVBFUyB8IFwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgIHAybV90b19tYXNrKHAybV9t
YXBfZm9yZWlnbikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1f
dG9fbWFzayhwMm1fbWFwX2ZvcmVpZ24pIHwgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcDJtX3RvX21hc2socDJtX21taW9fZGlyZWN0KSkKIAog
LyogVmFsaWQgdHlwZXMgbm90IG5lY2Vzc2FyaWx5IGFzc29jaWF0ZWQgd2l0
aCBhICh2YWxpZCkgTUZOLiAqLwogI2RlZmluZSBQMk1fSU5WQUxJRF9NRk5f
VFlQRVMgKFAyTV9QT0RfVFlQRVMgICAgICAgICAgICAgICAgICBcCkBAIC02
MjcsMTkgKzYyOCw5IEBAIGludCBwMm1fZmluaXNoX3R5cGVfY2hhbmdlKHN0
cnVjdCBkb21haW4KIGludCBwMm1faXNfbG9nZGlydHlfcmFuZ2Uoc3RydWN0
IHAybV9kb21haW4gKiwgdW5zaWduZWQgbG9uZyBzdGFydCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBlbmQpOwogCi0jaWZk
ZWYgQ09ORklHX0hWTQogLyogU2V0IG1taW8gYWRkcmVzc2VzIGluIHRoZSBw
Mm0gdGFibGUgKGZvciBwYXNzLXRocm91Z2gpICovCiBpbnQgc2V0X21taW9f
cDJtX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsIGdmbl90IGdmbiwgbWZuX3Qg
bWZuLAogICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgb3Jk
ZXIpOwotaW50IGNsZWFyX21taW9fcDJtX2VudHJ5KHN0cnVjdCBkb21haW4g
KmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLCBtZm5fdCBtZm4sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9yZGVyKTsKLSNlbHNlCi1z
dGF0aWMgaW5saW5lIGludCBjbGVhcl9tbWlvX3AybV9lbnRyeShzdHJ1Y3Qg
ZG9tYWluICpkLCB1bnNpZ25lZCBsb25nIGdmbiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IG1mbiwgdW5zaWduZWQg
aW50IG9yZGVyKQotewotICAgIHJldHVybiAtRUlPOwotfQotI2VuZGlmCiAK
IC8qIFNldCBpZGVudGl0eSBhZGRyZXNzZXMgaW4gdGhlIHAybSB0YWJsZSAo
Zm9yIHBhc3MtdGhyb3VnaCkgKi8KIGludCBzZXRfaWRlbnRpdHlfcDJtX2Vu
dHJ5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLAo=

--=separator--


From xen-users-bounces@lists.xenproject.org Thu Sep 02 15:28:13 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 02 Sep 2021 15:28:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.176670.322743 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLod6-0008Um-17; Thu, 02 Sep 2021 15:27:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 176670.322743; Thu, 02 Sep 2021 15:27:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mLod5-0008SH-Qu; Thu, 02 Sep 2021 15:27:51 +0000
Received: by outflank-mailman (input) for mailman id 176670;
 Wed, 01 Sep 2021 20:21:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gjEv=NX=gmail.com=neilsikka@srs-us1.protection.inumbo.net>)
 id 1mLWju-00053s-Pb
 for xen-users@lists.xen.org; Wed, 01 Sep 2021 20:21:42 +0000
Received: from mail-qv1-xf2c.google.com (unknown [2607:f8b0:4864:20::f2c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a6959d20-591e-4302-bc7a-7a97bd6776f5;
 Wed, 01 Sep 2021 20:21:41 +0000 (UTC)
Received: by mail-qv1-xf2c.google.com with SMTP id ew6so591225qvb.5
 for <xen-users@lists.xen.org>; Wed, 01 Sep 2021 13:21:41 -0700 (PDT)
Received: from [192.168.50.139] (pool-108-31-124-45.washdc.fios.verizon.net.
 [108.31.124.45])
 by smtp.gmail.com with ESMTPSA id r4sm518459qtw.5.2021.09.01.13.21.39
 for <xen-users@lists.xen.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 01 Sep 2021 13:21:40 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: a6959d20-591e-4302-bc7a-7a97bd6776f5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20210112;
        h=user-agent:mime-version:content-transfer-encoding:subject:from:date
         :to:message-id;
        bh=gFj9lGeciby+tZ8p+1HBNUZBd5l/s/M0O/CaEz+LMFc=;
        b=IulibV/Zl5mP6eWh47nKk3DHiU620YHQGPrWcYHZlMCejtgfS20qRpmk+2+46zDWwV
         mrz5SAIUalKE6WJVhV/82t8/6CZc02Qlf3VxzCowGfSP8GGYXmGLcT8A0IGOI9K539KS
         fILij+daYlmLgURdWnCp6YUuZqWDIJdnZ7rYNZfTREb06slPgGjXpW+xRqUkW8y5aSkn
         0sfHOs+V3bzJm7WJ2kNan8t99GZx4S21NE/61JyaZOrpuvyf/kvLoRNHwLcuTOqaZdc5
         SLoZzDbav7Alf95IiY3AKvtwaUhO2fP9m4oQjEv5b6MbjqS7v7s33EXUbNiy3EfoABd6
         TTvw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:user-agent:mime-version
         :content-transfer-encoding:subject:from:date:to:message-id;
        bh=gFj9lGeciby+tZ8p+1HBNUZBd5l/s/M0O/CaEz+LMFc=;
        b=Y7iSjxxPyQPywHUFDgu9JBADGjDX+Mwb4YXW2za3F6ZRxDNhA/xtB/f6vXTR7HyOAF
         HtgvTDnvkWYnpChHwUL5vSihFd3iXbJdyvGtDv2PYGgLYaigEmws7eLoOvPIzI4vRAYG
         xlOfR6T2yvLyTyd+iJ7EyOOnxe46yrvkogjW8LFgyAhZ84evzOVWen/1YrndC/ei93/r
         2fVGyyQRWDsezv+nuG8lJLjZSfFgoGdFLgl/gFlRlQNKg22qNtnlzuUf84drrAK4p+XY
         vTFNmYv+e3zV1iR0StDmpf+DCH6OZFDdr7jrIHfGKh2uevDQydGQgP+ICNa37vZHaOjp
         ml0A==
X-Gm-Message-State: AOAM531TUhCHJvcrDleXjVMABdegWzZkzVRRaoxx0gvn6EImVfkxykrP
	6WHpRpJ2nEoEvRmXvBT6pbVwlX5DxIg97g==
X-Google-Smtp-Source: ABdhPJww0gUIx/1+mjhs+yguV8EShIYD1WJQF8v631dhoMnj61f0q9WrLh5XUN6xhey6RyPCyzyn9Q==
X-Received: by 2002:a0c:e887:: with SMTP id b7mr1616560qvo.54.1630527700900;
        Wed, 01 Sep 2021 13:21:40 -0700 (PDT)
User-Agent: Android
X-Is-Generated-Message-Id: true
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----KRLUXF7VJMCBKTXP6F1EVIFZB3Q14A"
Content-Transfer-Encoding: 7bit
X-Local-Message-Id: <5fa25d3e-b643-40f7-a5d0-8a0c95481996@gmail.com>
Subject: xl restore blocks for 1 minute
From: Neil Sikka <neilsikka@gmail.com>
Date: Wed, 01 Sep 2021 16:21:37 -0400
To: xen-users@lists.xen.org
Message-ID: <5fa25d3e-b643-40f7-a5d0-8a0c95481996@gmail.com>

------KRLUXF7VJMCBKTXP6F1EVIFZB3Q14A
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
 charset=UTF-8

Hello,
When I run xl restore on a Windows 10 VM with xen 4=2E13, the VM see=
ms to hang for about 1 minute while xentop lists the VM in the 'b' state=2E=
 When I move the mouse in the VNC window of the VM, I see the windows point=
er move and change shape if I hover over text or a windows resize region fo=
r example, but I cannot change window focus by clicking, and none of the ap=
plications respond=2E The host has a lot of resources and this is the only =
VM running on it=2E

Does anyone know what's happening and how to fix it?

=
Thanks,
Neil
------KRLUXF7VJMCBKTXP6F1EVIFZB3Q14A
Content-Type: text/html;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Hello,<br></div>
<div dir=3D"auto">When I run xl restore =
on a Windows 10 VM with xen 4=2E13, the VM seems to hang for about 1 minute=
 while xentop lists the VM in the 'b' state=2E When I move the mouse in the=
 VNC window of the VM, I see the windows pointer move and change shape if I=
 hover over text or a windows resize region for example, but I cannot chang=
e window focus by clicking, and none of the applications respond=2E The hos=
t has a lot of resources and this is the only VM running on it=2E<br><br></=
div>
<div dir=3D"auto">Does anyone know what's happening and how to fix it?=
<br><br></div>
<div dir=3D"auto">Thanks,<br></div>
<div dir=3D"auto">Neil</=
div>

------KRLUXF7VJMCBKTXP6F1EVIFZB3Q14A--



From xen-users-bounces@lists.xenproject.org Fri Sep 03 16:44:07 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 03 Sep 2021 16:44:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178252.324148 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMCHf-0000LC-4e; Fri, 03 Sep 2021 16:43:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178252.324148; Fri, 03 Sep 2021 16:43:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMCHf-0000L3-1D; Fri, 03 Sep 2021 16:43:19 +0000
Received: by outflank-mailman (input) for mailman id 178252;
 Fri, 03 Sep 2021 16:43:18 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1mMCHe-0000Kx-4c
 for xen-users@lists.xenproject.org; Fri, 03 Sep 2021 16:43:18 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1mMCHd-0000bh-S2; Fri, 03 Sep 2021 16:43:17 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1mMCHd-00057o-MJ; Fri, 03 Sep 2021 16:43:17 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:To:Subject;
	bh=eUmfw5re8u7NP1FgRkqyBqhy9Q17Ex7eq+psMX6F+qA=; b=Bu2t69xUIqF+kN9l6UWCCHjgz1
	OQJyEmK7ddOjJBasN8Rp0exSioyt5i56dzyzcooecFsb5WiS/bXmXOdUwjXAuglO4KLLWDc8DCgIs
	1SKRv7r9ueN2XhFSSdG33al4f+X0wxu2POPqLkKvXtw09bBDQ4OCl0qdxL0af7kB0TrE=;
Subject: Re: VT-x turned off and on
To: TheBearAK <thebearak@gmail.com>, xen-users@lists.xenproject.org
References: <1a639af0-babe-8072-111f-b5c0a17220c5@gmail.com>
 <CADrndxM=drka_LAW58s10Fx76ye6P4R3qo+m6YtZ59FRSz2c3g@mail.gmail.com>
 <75cd4db6-73ee-ead8-c536-6f654109c612@gmail.com>
 <CADrndxOewT6CNtBq8Q_Vk7kgVN+oYs2mNc5a=hAe_SbYbabi0Q@mail.gmail.com>
 <cfbb51f0-9ff7-c430-9ae3-fc85db2a0133@gmail.com>
 <CADrndxN-y32XSQe64Z4vwcjRN5vHDkzaaPMCyHS+ZFW2v3gLjw@mail.gmail.com>
 <78bb5c86-0e8b-ab93-b72b-fa8202d0c7e3@gmail.com>
From: Julien Grall <julien@xen.org>
Message-ID: <8d8cbfa2-40a8-c0a0-1c52-ac8419a581e9@xen.org>
Date: Fri, 3 Sep 2021 17:43:16 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.13.0
MIME-Version: 1.0
In-Reply-To: <78bb5c86-0e8b-ab93-b72b-fa8202d0c7e3@gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hello,

On 31/08/2021 00:42, TheBearAK wrote:
> Discovered that VT-b was turned off in my server's BIOS.   After turning 
> it on, I get these results from xl dmesg:
> 
> (XEN) Intel VT-d iommu 0 supported page sizes: 4kB
> (XEN) Intel VT-d Snoop Control enabled.
> (XEN) Intel VT-d Dom0 DMA Passthrough not enabled.
> (XEN) Intel VT-d Queued Invalidation enabled.
> (XEN) Intel VT-d Interrupt Remapping enabled.
> (XEN) Intel VT-d Posted Interrupt not enabled.
> (XEN) Intel VT-d Shared EPT tables not enabled.
> (XEN) I/O virtualisation enabled
> (XEN)  - Dom0 mode: Relaxed
> (XEN) Interrupt remapping enabled
> 
> 
> That shows me that it is turned on and working, but if I do a
> 
> #egrep -c '(vmx|svm)' /proc/cpuinfo
> 
> It doesn't find anything (0)

This is expected because /proc/cpuinfo shows the features exposed to 
dom0 and Xen will hide VMX/SVM.

If you boot on directly Linux, you should be able to find VMX/SVM from 
/proc/cpuinfo.

Best regards,

-- 
Julien Grall


From xen-users-bounces@lists.xenproject.org Fri Sep 03 17:16:08 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 03 Sep 2021 17:16:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178274.324165 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMCn5-0004Xz-VM; Fri, 03 Sep 2021 17:15:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178274.324165; Fri, 03 Sep 2021 17:15:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMCn5-0004Xr-Ru; Fri, 03 Sep 2021 17:15:47 +0000
Received: by outflank-mailman (input) for mailman id 178274;
 Fri, 03 Sep 2021 17:15:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1mMCn3-0004Xl-VM
 for xen-users@lists.xenproject.org; Fri, 03 Sep 2021 17:15:46 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1mMCn3-0001Ba-Sf; Fri, 03 Sep 2021 17:15:45 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1mMCn3-0003tj-Ma; Fri, 03 Sep 2021 17:15:45 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:Cc:References:To:Subject;
	bh=Fq7E+Ywy/htSYos7UAUxpZIA5PlE0ezHxKQZ9UpkOtI=; b=sD7KU4h/PqN+UkvZeIvzo+ry9A
	BTg4+CkEnT6oRg30D4OkqSWwmX7UjNzujz8WQaSwbURpPnzW/uZjjuNuvlazNOg2gEaWs26pxE//2
	SfISeRT9eYDAWhOCFAsjbI6ZSb4cAqdnNv9plxddFbhnB3tpTK44YFnlwxLwti04BY8c=;
Subject: Re: xen4.13 on raspberry4B use Domain U to control GPIO device
To: =?UTF-8?B?5qiK5b+D5piK?= <a15559828520@gmail.com>,
 xen-users@lists.xenproject.org
References: <CAKK6NWM8K6=4+73wzP182qYGd9kZqJXpyUd1iWpvMXKGh+0yiA@mail.gmail.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
Message-ID: <898567a9-6b42-811c-d905-e5d0f170c99d@xen.org>
Date: Fri, 3 Sep 2021 18:15:44 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.13.0
MIME-Version: 1.0
In-Reply-To: <CAKK6NWM8K6=4+73wzP182qYGd9kZqJXpyUd1iWpvMXKGh+0yiA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hello,

+Stefano

On 29/08/2021 15:43, 樊心昊 wrote:
> Hello everyone:
>      I'm trying use Domain U to control GPIO,but I can't find a way to 
> share bcm2835-gpiomem or gpiomem for Domain U.
>      When I had written xl.cfg file, like this
> 
>     kernel = "/home/aston/GUEST_Domain/guest_image"
>     cmdline = "console=hvc0 earlyprintk=xen sync_console root=/dev/xvda"
>     memory = "256"
>     name = "rpi4-xen-guest"
>     vcpus = 1
>     serial="pty"
>     disk = [ 'phy:/dev/loop0,xvda,w' ]
>     vif=[ 'mac=00:11:22:66:88:22,bridge=xenbr0,type=netfront', ] 
> 
>       device_tree = "/boot/bcm2711-rpi-4-b.dtb"
> 
>     dtdev = [ "/soc/gpiomem@7e200000" ]
> 
>     iomem = [ "0x7e200000,1@0x1000" ] 
> 
>     ioports=['0x5'] 
> 
> It will result in anerror，like this
> 
> iomem = [ "0x7e200000,1@0x1000" ]   cause:
> 
>     libxl: error: libxl_create.c:1498:domcreate_launch_dm: Domain
>     1:failed give domain access to iomem range 7e200000-7e200000:
>     Operation not permitted

The option 'iomem' takes frame numbers in arguments. If I am not 
mistaken 0x7e200000 is an address, so you would want to use 0x7e200.

Similar the bits after @ if a guest frame number. Can you confirm you 
want to map at 0x1000000?

>     (XEN) gnttab_mark_dirty not implemented yet
> 
> 
>   device_tree = "/boot/bcm2711-rpi-4-b.dtb"
>   dtdev = [ "/soc/gpiomem@7e200000" ]
> cause
> 
>     libxl: error: libxl_create.c:980:libxl__domain_config_setdefault:
>     passthrough not supported on this platform

dtdev is used to configure devices protected by an IOMMU. I would be 
surprised if the GPIO is behind an IOMMU. Can you confirm it?

Note that in this case you need to ensure that you device is not doing 
any DMA (this would be insecure and broken because guest are have a 
different view of the memory).

> 
> 
> ioports=['0x5']
> cause
> 
>     libxl: error: libxl_create.c:1467:domcreate_launch_dm: Domain
>     2:failed give domain access to ioports 5-5: Operation not supported
The option ioport is an x86 specific option. What are you attempting to 
do with this option?

Cheers,

-- 
Julien Grall


From xen-users-bounces@lists.xenproject.org Fri Sep 03 23:29:30 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 03 Sep 2021 23:29:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178556.324637 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMIc4-0002MR-88; Fri, 03 Sep 2021 23:28:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178556.324637; Fri, 03 Sep 2021 23:28:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMIc4-0002MJ-3h; Fri, 03 Sep 2021 23:28:48 +0000
Received: by outflank-mailman (input) for mailman id 178556;
 Fri, 03 Sep 2021 23:28:46 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UKUJ=NZ=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1mMIc2-0002MD-B8
 for xen-users@lists.xenproject.org; Fri, 03 Sep 2021 23:28:46 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 80fc55cc-a71a-46cc-ba78-b75bb84b0716;
 Fri, 03 Sep 2021 23:28:45 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 7FEA260F9C;
 Fri,  3 Sep 2021 23:28:44 +0000 (UTC)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 80fc55cc-a71a-46cc-ba78-b75bb84b0716
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1630711724;
	bh=5jrOQxh0RNjUaHlQwzzCA3h4oi5B0ov3mCnA+W4od84=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ooY8HnBPF9l7q29mqaQGaTUXwi8uDOsh4I1kL4ME1NwkShev1O/GyEinbsbL1028W
	 JtZFLfVZFH3xj6zL7Ha4jRV3k7hSR84pg4nurOFqxW8TpX4x9Ukv4FYlKDPsgZzpcg
	 mTN+o1lWplIYq6TVTjS8o4OgtYwdRRxxoRB/LwHlzuxGHWGZLP8ub8w5bxXS7aik6x
	 JrfzVxP6zWg8MpN0AFne/NIPG7A4C3YM3l7V9AN6Fttk9eB+yAvRL53Kvj/wcVzzlQ
	 QGBmiWKbYzG8GBGZgCqN9QL71EE0gOuCBDOFeHlhN80uKYGoljxw1FZ/5QX0MJovS9
	 1RSlUkRSes8vg==
Date: Fri, 3 Sep 2021 16:28:43 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: a15559828520@gmail.com
cc: xen-users@lists.xenproject.org, julien@xen.org, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: xen4.13 on raspberry4B use Domain U to control GPIO device
In-Reply-To: <898567a9-6b42-811c-d905-e5d0f170c99d@xen.org>
Message-ID: <alpine.DEB.2.21.2109031622390.26072@sstabellini-ThinkPad-T480s>
References: <CAKK6NWM8K6=4+73wzP182qYGd9kZqJXpyUd1iWpvMXKGh+0yiA@mail.gmail.com> <898567a9-6b42-811c-d905-e5d0f170c99d@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1031793867-1630711724=:26072"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1031793867-1630711724=:26072
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Fri, 3 Sep 2021, Julien Grall wrote:
> On 29/08/2021 15:43, 樊心昊 wrote:
> > Hello everyone:
> >      I'm trying use Domain U to control GPIO,but I can't find a way to
> > share bcm2835-gpiomem or gpiomem for Domain U.
> >      When I had written xl.cfg file, like this
> > 
> >     kernel = "/home/aston/GUEST_Domain/guest_image"
> >     cmdline = "console=hvc0 earlyprintk=xen sync_console root=/dev/xvda"
> >     memory = "256"
> >     name = "rpi4-xen-guest"
> >     vcpus = 1
> >     serial="pty"
> >     disk = [ 'phy:/dev/loop0,xvda,w' ]
> >     vif=[ 'mac=00:11:22:66:88:22,bridge=xenbr0,type=netfront', ] 
> >       device_tree = "/boot/bcm2711-rpi-4-b.dtb"
> > 
> >     dtdev = [ "/soc/gpiomem@7e200000" ]
> > 
> >     iomem = [ "0x7e200000,1@0x1000" ] 
> >     ioports=['0x5'] 
> > It will result in anerror，like this
> > 
> > iomem = [ "0x7e200000,1@0x1000" ]   cause:
> > 
> >     libxl: error: libxl_create.c:1498:domcreate_launch_dm: Domain
> >     1:failed give domain access to iomem range 7e200000-7e200000:
> >     Operation not permitted
> 
> The option 'iomem' takes frame numbers in arguments. If I am not mistaken
> 0x7e200000 is an address, so you would want to use 0x7e200.
> 
> Similar the bits after @ if a guest frame number. Can you confirm you want to
> map at 0x1000000?

Although I have not tested it myself I would try:

iomem = [ "0x7e200,1" ]


> >     (XEN) gnttab_mark_dirty not implemented yet
> > 
> > 
> >   device_tree = "/boot/bcm2711-rpi-4-b.dtb"
> >   dtdev = [ "/soc/gpiomem@7e200000" ]
> > cause
> > 
> >     libxl: error: libxl_create.c:980:libxl__domain_config_setdefault:
> >     passthrough not supported on this platform
> 
> dtdev is used to configure devices protected by an IOMMU. I would be surprised
> if the GPIO is behind an IOMMU. Can you confirm it?
> 
> Note that in this case you need to ensure that you device is not doing any DMA
> (this would be insecure and broken because guest are have a different view of
> the memory).

Yeah, the reason for the error message is that usually Xen requires an
IOMMU (the most common is ARM SMMU) to do device assignment.
Specifically, it is needed for DMA mastering devices. But as Julien
wrote most probably GPIO is not a DMA master, is only a slave device, so
you might be able to assign it without IOMMU.  In that case you can try
to remove the dtdev line and try again.

Note that if it turns out that GPIO is a DMA master and there will be
memory corruptions! 


> > 
> > ioports=['0x5']
> > cause
> > 
> >     libxl: error: libxl_create.c:1467:domcreate_launch_dm: Domain
> >     2:failed give domain access to ioports 5-5: Operation not supported
> The option ioport is an x86 specific option. What are you attempting to do
> with this option?

You shouldn't need any ioports setting, they refer to the ancient x86
I/O ports. There are none on Raspberry Pi.
--8323329-1031793867-1630711724=:26072--


From xen-users-bounces@lists.xenproject.org Sat Sep 04 07:05:19 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 04 Sep 2021 07:05:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178621.324702 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMPjE-0003EM-8V; Sat, 04 Sep 2021 07:04:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178621.324702; Sat, 04 Sep 2021 07:04:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMPjE-0003EE-4p; Sat, 04 Sep 2021 07:04:40 +0000
Received: by outflank-mailman (input) for mailman id 178621;
 Sat, 04 Sep 2021 07:04:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=octw=N2=antarean.org=joost@srs-us1.protection.inumbo.net>)
 id 1mMPjB-0003E8-Qa
 for xen-users@lists.xenproject.org; Sat, 04 Sep 2021 07:04:38 +0000
Received: from gw2.antarean.org (unknown [141.105.125.208])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 093a1513-5d81-4176-9d70-718f9d48f916;
 Sat, 04 Sep 2021 07:04:35 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H1lVX3vHLz8wNs
 for <xen-users@lists.xenproject.org>; Sat,  4 Sep 2021 08:43:32 +0200 (CEST)
Received: from gw2.antarean.org ([127.0.0.1])
 by localhost (gw2.antarean.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id zDXvBsuojoO7 for <xen-users@lists.xenproject.org>;
 Sat,  4 Sep 2021 08:43:32 +0200 (CEST)
Received: from mailstore1.adm.antarean.org (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H1lVX1BHSz8vrQ
 for <xen-users@lists.xenproject.org>; Sat,  4 Sep 2021 08:43:32 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailstore1.adm.antarean.org (Postfix) with ESMTP id 4H1lXW0mB9z17
 for <xen-users@lists.xenproject.org>; Sat,  4 Sep 2021 08:45:15 +0200 (CEST)
Received: from mailstore1.adm.antarean.org ([127.0.0.1])
 by localhost (mailstore1.adm.antarean.org [127.0.0.1]) (amavisd-new,
 port 10024)
 with ESMTP id I-RXtkP71No3 for <xen-users@lists.xenproject.org>;
 Sat,  4 Sep 2021 08:45:14 +0200 (CEST)
Received: from iris.localnet (iris.adm.antarean.org [10.55.16.47])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by mailstore1.adm.antarean.org (Postfix) with ESMTPSA id 4H1lXV4vS4z13
 for <xen-users@lists.xenproject.org>; Sat,  4 Sep 2021 08:45:14 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 093a1513-5d81-4176-9d70-718f9d48f916
X-Virus-Scanned: amavisd-new at antarean.org
X-Virus-Scanned: amavisd-new at antarean.org
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=antarean.org;
	s=default; t=1630737914;
	bh=/J/Ht/vfG+yhxPO8DhNxVSdvAuwJE0Gyl/ZGaSKUYS4=;
	h=From:To:Subject:Date;
	b=FaL5pP1Y22f4pQbNTvbExTSnEcXmfeYMnsjAX8XE9XIp1lROpWukDOrrglTNb32v2
	 d3KCATtZnINracjvLeh8TcuMKOqIg9fKhwuKe8UEUrYFt4mDnNpX95DQKlHOHpKtkl
	 Ku2UfJkBaeNKKQ2T7r4valoEfjlu9FPrSFVyFf9U=
From: "J. Roeleveld" <joost@antarean.org>
To: xen-users@lists.xenproject.org
Subject: Kernel warning on driver-domain
Date: Sat, 04 Sep 2021 08:45:14 +0200
Message-ID: <4342821.LvFx2qVVIh@iris>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

Hi,

I am getting semi-regular warnings in the dmesg about block devices shared to other Domains from a driver-domain.

The dmesg/kernel trace is at the bottom of the email.
All the traces show the same "call trace" and most of the numbers looks similar.
It's always a different domain and xvda-device that is listed.

Versions (Dom0 and driver domain are kept at same versions)
Kernel: 5.10.52
Xen: 4.14.2

Apart from these warning, I do not see any issues. The domains are running stable, no messages in the logs.

In this particular one, the domain is practically idle, xvda2 is for the swap partition, which isn't actually used.

In previous ones, similarly only the dmesg message on the driver domain, all other domains don't show anything.
There was a scrub running on a different pool, which finished at 17:19:35. (Nearly 30 minutes before).

I tried to google for these, but apart from a few possible matches with much older kernels, I couldn't find anything related.

====
[Fri Sep  3 17:48:01 2021] ------------[ cut here ]------------ 
[Fri Sep  3 17:48:01 2021] WARNING: CPU: 0 PID: 27163 at kernel/kthread.c:83 to_kthread+0x6/0x10 
[Fri Sep  3 17:48:01 2021] Modules linked in: rpcsec_gss_krb5 target_core_iblock iscsi_target_mod target_core_mod xt_recent ipt_REJECT nf_reject_ipv4 xt_multiport xt_tcpudp xt_conntrack xt_hashlimit xt_addrtype xt_mark iptable_mangle iptable_nat iptable_raw n
fnetlink_log xt_NFLOG nf_log_ipv4 nf_log_common xt_LOG nf_nat nf_conntrack_netlink nf_conntrack nf_defrag_ipv4 nfnetlink iptable_filter ip_tables x_tables dm_queue_length zfs(PO) zunicode(PO) zzstd(O) zlua(O) zcommon(PO) znvpair(PO) zavl(PO) icp(PO) spl(O) cr
ct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel mpt3sas aesni_intel scsi_transport_sas 
[Fri Sep  3 17:48:01 2021] CPU: 0 PID: 27163 Comm: 18.xvda2-0 Tainted: P        W  O      5.10.52-gentoo-generic #1 
[Fri Sep  3 17:48:01 2021] RIP: e030:to_kthread+0x6/0x10 
[Fri Sep  3 17:48:01 2021] Code: 99 22 e3 81 e8 6f 73 3c 00 48 98 c3 e8 82 24 f9 ff 66 90 c3 e8 5a 24 f9 ff 66 90 c3 e8 8e 18 02 00 66 90 c3 f6 47 26 20 75 02 <0f> 0b 48 8b 87 a8 04 00 00 c3 e8 eb ff ff ff 48 8b 40 18 c3 65 48 
[Fri Sep  3 17:48:01 2021] RSP: e02b:ffffc90020267b90 EFLAGS: 00010046 
[Fri Sep  3 17:48:01 2021] RAX: ffff889886e2a2c0 RBX: ffffc90020267c10 RCX: ffff889886f00000 
[Fri Sep  3 17:48:01 2021] RDX: 0000000000000000 RSI: ffffc90020267c10 RDI: ffff889140a38ec0 
[Fri Sep  3 17:48:01 2021] RBP: ffff889140a38ec0 R08: 000188e909deff76 R09: 0000000000000040 
[Fri Sep  3 17:48:01 2021] R10: 0000000000000004 R11: 0000000000000001 R12: 0000000000000000 
[Fri Sep  3 17:48:01 2021] R13: 0000000000000000 R14: 0000000000000000 R15: ffff889140a38f68 
[Fri Sep  3 17:48:01 2021] FS:  0000000000000000(0000) GS:ffff889886e00000(0000) knlGS:0000000000000000 
[Fri Sep  3 17:48:01 2021] CS:  10000e030 DS: 0000 ES: 0000 CR0: 0000000080050033 
[Fri Sep  3 17:48:01 2021] CR2: 000055e9dec50978 CR3: 000000011ed0c000 CR4: 0000000000050660 
[Fri Sep  3 17:48:01 2021] Call Trace: 
[Fri Sep  3 17:48:01 2021]  kthread_is_per_cpu+0x5/0x16 
[Fri Sep  3 17:48:01 2021]  can_migrate_task+0x65/0x17a 
[Fri Sep  3 17:48:01 2021]  load_balance+0x3e8/0x83e 
[Fri Sep  3 17:48:01 2021]  newidle_balance+0x1d0/0x2a7 
[Fri Sep  3 17:48:01 2021]  pick_next_task_fair+0x196/0x1f7 
[Fri Sep  3 17:48:01 2021]  __schedule+0x1ab/0x515 
[Fri Sep  3 17:48:01 2021]  ? _raw_spin_unlock_irqrestore+0xd/0xe 
[Fri Sep  3 17:48:01 2021]  ? __mod_timer+0x21f/0x246 
[Fri Sep  3 17:48:01 2021]  schedule+0x73/0x99 
[Fri Sep  3 17:48:01 2021]  schedule_timeout+0x9e/0xd7 
[Fri Sep  3 17:48:01 2021]  ? __next_timer_interrupt+0xe3/0xe3 
[Fri Sep  3 17:48:01 2021]  xen_blkif_schedule+0x251/0xb5e 
[Fri Sep  3 17:48:01 2021]  ? __wake_up_locked_sync_key+0x15/0x15 
[Fri Sep  3 17:48:01 2021]  ? __schedule+0x4f2/0x515 
[Fri Sep  3 17:48:01 2021]  ? arch_local_irq_disable+0x5/0x8 
[Fri Sep  3 17:48:01 2021]  ? arch_local_irq_save+0x11/0x17 
[Fri Sep  3 17:48:01 2021]  ? xen_blkif_be_int+0x22/0x22 
[Fri Sep  3 17:48:01 2021]  kthread+0xea/0xef 
[Fri Sep  3 17:48:01 2021]  ? kthread_mod_delayed_work+0xb8/0xb8 
[Fri Sep  3 17:48:01 2021]  ret_from_fork+0x22/0x30 
[Fri Sep  3 17:48:01 2021] ---[ end trace 9280d21445c4f71b ]---
====






From xen-users-bounces@lists.xenproject.org Sat Sep 04 15:13:00 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 04 Sep 2021 15:13:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178746.324816 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMXL6-0001nF-Ee; Sat, 04 Sep 2021 15:12:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178746.324816; Sat, 04 Sep 2021 15:12:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMXL6-0001n7-B7; Sat, 04 Sep 2021 15:12:16 +0000
Received: by outflank-mailman (input) for mailman id 178746;
 Sat, 04 Sep 2021 15:12:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iNAo=N2=unixindia.com=bhasker@srs-us1.protection.inumbo.net>)
 id 1mMXL4-0001n1-K3
 for xen-users@lists.xenproject.org; Sat, 04 Sep 2021 15:12:14 +0000
Received: from mail-io1-xd29.google.com (unknown [2607:f8b0:4864:20::d29])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 896781af-63d1-4412-b26c-6156de2a06fd;
 Sat, 04 Sep 2021 15:12:12 +0000 (UTC)
Received: by mail-io1-xd29.google.com with SMTP id g9so2644368ioq.11
 for <xen-users@lists.xenproject.org>; Sat, 04 Sep 2021 08:12:12 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 896781af-63d1-4412-b26c-6156de2a06fd
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unixindia.com; s=mail;
        h=mime-version:from:date:message-id:subject:to;
        bh=pWt61Hm0SnYMak2zE6TxuNgLfbDZ8EXWGBHuDC9vfNo=;
        b=g88JVThzb2JAnZfM/5MOidhBsqJY+bJvMZgZqXlMWGinkwCFeq6kzUINkKBYJAYZU7
         mYr+f+5Z3gDw+R8VI+K8mdd+Su2OJdYP9clU+oUBjVYw7jyUmY2XBhJe77jtxFoTNOBN
         u42zDC4CPdplnPvdfsOfplyVgUF5p/OzvORvBNJS1uX2yCjbjevnMc2Su6WhxxBQO9hP
         loQVTTSEjLS6GHfh0tcsjbuS3oT2yAaC5zrH1SYWiLrl5PY3xs4bUg+j7tBXCuiHuZs2
         TYCs7RkwHEyklYsItJ0DaTjznHKhm9pJPypxk+DDmuoA4YLPUeEfG9jT2jYmxtVx4gjZ
         R/5Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=pWt61Hm0SnYMak2zE6TxuNgLfbDZ8EXWGBHuDC9vfNo=;
        b=AWspASt8Sv8zrWTX0muq9KNz2EGOwVzBSGY7O0gZ4HYJQvviL/8gB5rsMgC0o/1uU5
         xlIfEyV3di0PptWAUpSEhAJDViRPdt73+XJjc+ua+afqKWsMyARfZSQCsw2tnUCncZgq
         Hw/j3SrTolDmO/rJ6ivPiT21bCbG1WeMcxzR8QHl1vC9DTcifhRiX40YBbWvluO6z9e0
         YAXZ5CAR7phKXfh97TviUjkAqYFSfM/pxVihfzu4R+lyUS5x8DYjUPcNvxPdqF3QahJF
         RE82kCZXJBTYL1IYuKfStZeBqXZ06wEgfInC8QINK3gcoARhmpr0yTPT1e/MPotokffe
         n/6Q==
X-Gm-Message-State: AOAM531xtU6hJcLQ1rnj8gSYW9l8yo+4WykSi9e9oISirfJij1hpBOWE
	hhlY1dJ8tsdQTKgmUwAX1xEhLW6xALqGPLYcBzd5VBjiHcU9rbkUKnQ=
X-Google-Smtp-Source: ABdhPJwSvIUeRvrvCIQfenu9f5WaY1Iqrvp5MotteTEVGvNe+xr2GDWj0n4ors9QO4Fx1DXafKJtLkQjLOyQDeZ51BI=
X-Received: by 2002:a05:6638:4195:: with SMTP id az21mr3666596jab.40.1630768332265;
 Sat, 04 Sep 2021 08:12:12 -0700 (PDT)
MIME-Version: 1.0
From: Bhasker C V <bhasker@unixindia.com>
Date: Sat, 4 Sep 2021 16:12:01 +0100
Message-ID: <CAPLCSGCkdZMph=iRrqf3G5kT881mN5kYaG=qXrMtWS=fTn2O=g@mail.gmail.com>
Subject: Help with Network SR-IOV (PF still in reset state. Is the PF
 interface up?)
To: xen-devel@lists.xenproject.org, xen-users@lists.xenproject.org
Content-Type: multipart/alternative; boundary="00000000000027f14e05cb2cd71c"

--00000000000027f14e05cb2cd71c
Content-Type: text/plain; charset="UTF-8"

I run  xen-4.14.3-pre from debian

I created 6 vfs for my igb card
06:00.0 Ethernet controller: Intel Corporation I350 Gigabit Network
Connection (rev 01)
I got these
07:10.0 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)
07:10.1 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)
07:10.4 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)
07:10.5 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)
07:11.0 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)
07:11.1 Ethernet controller: Intel Corporation I350 Ethernet Controller
Virtual Function (rev 01)

bcv@bcvibmb1:~$ sudo xl pci-assignable-list
0000:07:10.1

However the guest is not able to see the link up.
bcv@utils:~$ sudo ethtool  enp0s0f1



Settings for enp0s0f1:

        Supported ports: [ ]
...

        Link detected: no

I see this error on the guest

[    6.134890] igbvf 0000:00:00.1: Xen PCI mapped GSI0 to IRQ19

[    6.149577] igbvf 0000:00:00.1: PF still in reset state. Is the PF
interface up?

[    6.149595] igbvf 0000:00:00.1: Assigning random MAC address.



[    6.151552] igbvf 0000:00:00.1: PF still resetting

[    6.153807] igbvf 0000:00:00.1: Intel(R) I350 Virtual Function

[    6.153822] igbvf 0000:00:00.1: Address: 32:91:70:c5:62:bd


and thiis on the host:
[  390.776779] xen-blkback: backend/vbd/3/51713: using 1 queues, protocol 1
(x86_64-abi) persistent grants


[  395.849996] pciback 0000:07:10.1: xen-pciback: Driver tried to write to
a read-only configuration space field at offset 0x1d6, size 2. This may be
harmless, but if you have problems with your device:

[  395.849996] 1) see permissive attribute in sysfs



[  395.849996] 2) report problems to the xen-devel mailing list along with
details of your device obtained from lspci.


[  396.103595] pciback 0000:07:10.1: enabling device (0000 -> 0002)




However if I pass through 07:10.4 it works fine. The host still reports
this  above error but all works well in the guest.


Please could someone help ? I have been using  KVM these years and just
moved to xen and hence new to xen.


Regards
Bhasker C V

--00000000000027f14e05cb2cd71c
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj5JIHJ1bsKgIHhlbi00LjE0LjMtcHJlIGZyb20gZGViaWFuPC9k
aXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JIGNyZWF0ZWQgNiB2ZnMgZm9yIG15IGlnYiBjYXJkIDxi
cj48L2Rpdj48ZGl2PjA2OjAwLjAgRXRoZXJuZXQgY29udHJvbGxlcjogSW50ZWwgQ29ycG9yYXRp
b24gSTM1MCBHaWdhYml0IE5ldHdvcmsgQ29ubmVjdGlvbiAocmV2IDAxKTwvZGl2PjxkaXY+SSBn
b3QgdGhlc2U8L2Rpdj48ZGl2PjA3OjEwLjAgRXRoZXJuZXQgY29udHJvbGxlcjogSW50ZWwgQ29y
cG9yYXRpb24gSTM1MCBFdGhlcm5ldCBDb250cm9sbGVyIFZpcnR1YWwgRnVuY3Rpb24gKHJldiAw
MSk8YnI+MDc6MTAuMSBFdGhlcm5ldCBjb250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlvbiBJMzUw
IEV0aGVybmV0IENvbnRyb2xsZXIgVmlydHVhbCBGdW5jdGlvbiAocmV2IDAxKTxicj4wNzoxMC40
IEV0aGVybmV0IGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIEkzNTAgRXRoZXJuZXQgQ29u
dHJvbGxlciBWaXJ0dWFsIEZ1bmN0aW9uIChyZXYgMDEpPGJyPjA3OjEwLjUgRXRoZXJuZXQgY29u
dHJvbGxlcjogSW50ZWwgQ29ycG9yYXRpb24gSTM1MCBFdGhlcm5ldCBDb250cm9sbGVyIFZpcnR1
YWwgRnVuY3Rpb24gKHJldiAwMSk8YnI+MDc6MTEuMCBFdGhlcm5ldCBjb250cm9sbGVyOiBJbnRl
bCBDb3Jwb3JhdGlvbiBJMzUwIEV0aGVybmV0IENvbnRyb2xsZXIgVmlydHVhbCBGdW5jdGlvbiAo
cmV2IDAxKTxicj4wNzoxMS4xIEV0aGVybmV0IGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9u
IEkzNTAgRXRoZXJuZXQgQ29udHJvbGxlciBWaXJ0dWFsIEZ1bmN0aW9uIChyZXYgMDEpPC9kaXY+
PGRpdj48YnI+PC9kaXY+PGRpdj5iY3ZAYmN2aWJtYjE6fiQgc3VkbyB4bCBwY2ktYXNzaWduYWJs
ZS1saXN0PGJyPjAwMDA6MDc6MTAuMTwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SG93ZXZlciB0
aGUgZ3Vlc3QgaXMgbm90IGFibGUgdG8gc2VlIHRoZSBsaW5rIHVwLiA8YnI+PC9kaXY+PGRpdj5i
Y3ZAdXRpbHM6fiQgc3VkbyBldGh0b29sIMKgZW5wMHMwZjEgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgPGJyPlNldHRpbmdzIGZvciBlbnAwczBmMTogwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqA8YnI+wqAgwqAgwqAgwqAgU3VwcG9ydGVkIHBvcnRzOiBbIF0gwqAgPGJy
PjwvZGl2PjxkaXY+Li4uwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqDCoCA8YnI+wqAgwqAgwqAgwqAgTGluayBkZXRlY3RlZDogbm8gwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgPGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2
PjxkaXY+SSBzZWUgdGhpcyBlcnJvciBvbiB0aGUgZ3Vlc3Q8YnI+PC9kaXY+PGRpdj48YnI+PC9k
aXY+PGRpdj5bIMKgIMKgNi4xMzQ4OTBdIGlnYnZmIDAwMDA6MDA6MDAuMTogWGVuIFBDSSBtYXBw
ZWQgR1NJMCB0byBJUlExOSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA8YnI+WyDCoCDCoDYuMTQ5NTc3XSBpZ2J2ZiAw
MDAwOjAwOjAwLjE6IFBGIHN0aWxsIGluIHJlc2V0IHN0YXRlLiBJcyB0aGUgUEYgaW50ZXJmYWNl
IHVwPyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA8YnI+WyDCoCDCoDYu
MTQ5NTk1XSBpZ2J2ZiAwMDAwOjAwOjAwLjE6IEFzc2lnbmluZyByYW5kb20gTUFDIGFkZHJlc3Mu
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgPGJyPlsgwqAgwqA2LjE1MTU1Ml0gaWdidmYgMDAwMDowMDowMC4xOiBQRiBzdGlsbCBy
ZXNldHRpbmcgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgPGJyPlsgwqAgwqA2LjE1MzgwN10g
aWdidmYgMDAwMDowMDowMC4xOiBJbnRlbChSKSBJMzUwIFZpcnR1YWwgRnVuY3Rpb24gwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgPGJyPlsgwqAgwqA2LjE1MzgyMl0gaWdidmYgMDAwMDowMDowMC4xOiBBZGRyZXNzOiAzMjo5
MTo3MDpjNTo2MjpiZCDCoCDCoCA8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PC9k
aXY+PGRpdj5hbmQgdGhpaXMgb24gdGhlIGhvc3Q6PC9kaXY+PGRpdj5bIMKgMzkwLjc3Njc3OV0g
eGVuLWJsa2JhY2s6IGJhY2tlbmQvdmJkLzMvNTE3MTM6IHVzaW5nIDEgcXVldWVzLCBwcm90b2Nv
bCAxICh4ODZfNjQtYWJpKSBwZXJzaXN0ZW50IGdyYW50cyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDxicj5bIMKgMzk1Ljg0OTk5Nl0gcGNp
YmFjayAwMDAwOjA3OjEwLjE6IHhlbi1wY2liYWNrOiBEcml2ZXIgdHJpZWQgdG8gd3JpdGUgdG8g
YSByZWFkLW9ubHkgY29uZmlndXJhdGlvbiBzcGFjZSBmaWVsZCBhdCBvZmZzZXQgMHgxZDYsIHNp
emUgMi4gVGhpcyBtYXkgYmUgaGFybWxlc3MsIGJ1dCBpZiB5b3UgaGF2ZSBwcm9ibGVtcyB3aXRo
IHlvdXIgZGV2aWNlOiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDxicj5bIMKgMzk1Ljg0OTk5
Nl0gMSkgc2VlIHBlcm1pc3NpdmUgYXR0cmlidXRlIGluIHN5c2ZzIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIDxicj5bIMKgMzk1Ljg0OTk5Nl0gMikgcmVwb3J0IHByb2JsZW1zIHRvIHRoZSB4ZW4t
ZGV2ZWwgbWFpbGluZyBsaXN0IGFsb25nIHdpdGggZGV0YWlscyBvZiB5b3VyIGRldmljZSBvYnRh
aW5lZCBmcm9tIGxzcGNpLiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDxi
cj5bIMKgMzk2LjEwMzU5NV0gcGNpYmFjayAwMDAwOjA3OjEwLjE6IGVuYWJsaW5nIGRldmljZSAo
MDAwMCAtJmd0OyAwMDAyKSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIDxicj48L2Rpdj48ZGl2
Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pkhvd2V2ZXIgaWYgSSBwYXNzIHRocm91Z2gg
MDc6MTAuNCBpdCB3b3JrcyBmaW5lLiBUaGUgaG9zdCBzdGlsbCByZXBvcnRzIHRoaXPCoCBhYm92
ZSBlcnJvciBidXQgYWxsIHdvcmtzIHdlbGwgaW4gdGhlIGd1ZXN0LiA8YnI+PC9kaXY+PGRpdj48
YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5QbGVhc2UgY291bGQgc29tZW9uZSBoZWxwID8g
SSBoYXZlIGJlZW4gdXNpbmfCoCBLVk0gdGhlc2UgeWVhcnMgYW5kIGp1c3QgbW92ZWQgdG8geGVu
IGFuZCBoZW5jZSBuZXcgdG8geGVuLiA8YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+
PC9kaXY+PGRpdj5SZWdhcmRzPC9kaXY+PGRpdj5CaGFza2VyIEMgViA8YnI+PC9kaXY+PC9kaXY+
DQo=
--00000000000027f14e05cb2cd71c--


From xen-users-bounces@lists.xenproject.org Sun Sep 05 02:31:49 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 05 Sep 2021 02:31:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.178870.325011 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMhw0-0005DN-3l; Sun, 05 Sep 2021 02:31:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 178870.325011; Sun, 05 Sep 2021 02:31:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMhvz-0005Ce-Rc; Sun, 05 Sep 2021 02:31:03 +0000
Received: by outflank-mailman (input) for mailman id 178870;
 Sun, 05 Sep 2021 02:31:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=af6+=N3=unixindia.com=bhasker@srs-us1.protection.inumbo.net>)
 id 1mMhvy-0004vm-Lf
 for xen-users@lists.xenproject.org; Sun, 05 Sep 2021 02:31:02 +0000
Received: from mail-io1-xd35.google.com (unknown [2607:f8b0:4864:20::d35])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 149956a0-f0c0-4310-9846-391c0ca727eb;
 Sun, 05 Sep 2021 02:30:56 +0000 (UTC)
Received: by mail-io1-xd35.google.com with SMTP id z1so4045932ioh.7
 for <xen-users@lists.xenproject.org>; Sat, 04 Sep 2021 19:30:56 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 149956a0-f0c0-4310-9846-391c0ca727eb
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unixindia.com; s=mail;
        h=mime-version:from:date:message-id:subject:to;
        bh=9GhxT6iwrAUFJk5X6XPrE5T9ku0+A2eEn9VbjHQLQIo=;
        b=wD34T0Gvd/G8aM6SWzrcuQIBuyaUkEE5aP2179vfJDvOPiIIEYbEniiZSWqCH7VYcy
         sEE5wMVn1gp7c6rFEiTC7Jd8svNigMfs/8BvnLyFPKvZyYH4iPWu+a2lDcveeMi1NDAX
         rnGA4JMIeko96oI3krWpHZ2npAQuvw1xzlu14cGNveGMQRcKgGun480dONIzkIc/QS5c
         NKdPYTApOsFRxDDeLmO2VN4XZotAxi2BcUBX0lm4FpL26dMShXT5CdCxwP4eLz9yI/AD
         FwWRJ0Ja0iOo4UZPAbZTAMoNJoxW70/ZYcMXz0ZIle06Sosv12kjBjqB7S+A7XbSRz87
         abPg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=9GhxT6iwrAUFJk5X6XPrE5T9ku0+A2eEn9VbjHQLQIo=;
        b=SahXd4m52aQ7vr5G+U5dKz1SHcS+fm4BqCBi4igAb1AanUgorEay4sYTI1pq1k+yTd
         vz9JH/MZXh5gBa8QziXWxixmlue/PdZ4iLx1l6ILH1SK3/iPDhMcaZqGkVt5QOgzkbb/
         RSOTxAI4mN3OQ26BoPBcsJg54MIV7SjxINgGPx/jigsPQr5pMF4N4b8MpkkrI+xvvaVx
         bhDEtFLZJc+5oqD2HjRUwB5v3uH6tfY2XYM/gYnB78LgjntCxBH2mQ/FVOyEJNC3Hwr7
         CdJIMOB8P5CTK3G2dRjU932THV0ghlu2lITOU9oT4moI7PRmcN8qylJ+i/FhOosYm25T
         EItw==
X-Gm-Message-State: AOAM530VjCqX8ih3nlJZg94wZ3Kh/vABg7FTZhLoEf0GmU1yPp2gjQG7
	PiIKwRHw27zAyxsgg5KpFtNQnEhZdD9wvK9gnSnXY3tWDXH2Wv/FXiM=
X-Google-Smtp-Source: ABdhPJwdKE+lU/CkGaWvd3SU3J4iNHihj1Pae38TvnF0g7XLrRJhQ9OIpnsmKu6R3H/ZJowz7UtGLPagw3hxNWODII8=
X-Received: by 2002:a02:1dc9:: with SMTP id 192mr5354954jaj.92.1630809055894;
 Sat, 04 Sep 2021 19:30:55 -0700 (PDT)
MIME-Version: 1.0
From: Bhasker C V <bhasker@unixindia.com>
Date: Sun, 5 Sep 2021 03:30:45 +0100
Message-ID: <CAPLCSGD+Tw3M1GcU6thqE4YiN6bWqJVqwc1YPPL7-rNb63J2pw@mail.gmail.com>
Subject: Pygrub crash when trying to edit kernel commandline
To: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="0000000000007950e905cb36526c"

--0000000000007950e905cb36526c
Content-Type: multipart/alternative; boundary="0000000000007950e705cb36526a"

--0000000000007950e705cb36526a
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi
 When I try to edit kernel command line of domU, pygrub crashes

bcv@bcvibmb1:~$ sudo xl create -c /etc/xen/utils.cfg
Parsing config from /etc/xen/utils.cfg
Using <class 'grub.GrubConf.GrubConfigFile'> to parse /boot/grub/menu.lst

    pyGRUB  version 0.6
 =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=90
 =E2=94=82 root            (hd0,0)                                         =
       =E2=94=82
 =E2=94=82 kernel          /boot/vmlinuz-4.19.0-17-amd64 root=3D/dev/xvda2 =
ro elev> =E2=94=82
 =E2=94=82 initrd          /boot/initrd.img-4.19.0-17-amd64                =
       =E2=94=82
 =E2=94=82                                                                 =
       =E2=94=82
 =E2=94=82                                                                 =
       =E2=94=82
 =E2=94=82                                                                 =
       =E2=94=82
 =E2=94=82                                                                 =
       =E2=94=82
 =E2=94=82                                                                 =
       =E2=94=82
 =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=98
     Use the =E2=86=91 and =E2=86=93 keys to select which entry is highligh=
ted.
     Press 'b' to boot, 'e' to edit the selected command in the
     boot sequence, 'c' for a command-line, 'o' to open a new line
     after ('O' for before) the selected line, 'd' to remove the
     selected line, or escape to go back to the main menu.


Traceback (most recent call last):
                                    File "/usr/lib/xen-4.14/bin/pygrub",
line 884, in <module>

                      raise RuntimeError("Unable to find partition
containing kernel")
             RuntimeError: Unable to find partition containing kernel
                                                                     libxl:
error: libxl_bootloader.c:648:bootloader_finished: Domain 4:bootloader
failed - consult logfile /var/log/xen/bootloader.4.log
                                                    libxl: error:
libxl_exec.c:117:libxl_report_child_exitstatus: bootloader [1316] exited
with error status 1
         libxl: error: libxl_create.c:1576:domcreate_rebuild_done: Domain
4:cannot (re-)build domain: -3

                            libxl: error:
libxl_domain.c:1182:libxl__destroy_domid: Domain 4:Non-existant domain
libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain 4:Unable
to destroy guest
libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain 4:Destruction
of domain failed
bcv@bcvibmb1:~$


Attached is the log
Am I doing something wrong ? or is this a known issue ?

Thanks
Bhasker C V

--0000000000007950e705cb36526a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj5IaTwvZGl2PjxkaXY+wqBXaGVuIEkgdHJ5IHRvIGVkaXQga2Vy
bmVsIGNvbW1hbmQgbGluZSBvZiBkb21VLCBweWdydWIgY3Jhc2hlczwvZGl2PjxkaXY+PHNwYW4g
c3R5bGU9ImNvbG9yOnJnYig2MSwxMzMsMTk4KSI+PGJyPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFu
IHN0eWxlPSJjb2xvcjpyZ2IoNjEsMTMzLDE5OCkiPmJjdkBiY3ZpYm1iMTp+JCBzdWRvIHhsIGNy
ZWF0ZSAtYyAvZXRjL3hlbi91dGlscy5jZmc8YnI+UGFyc2luZyBjb25maWcgZnJvbSAvZXRjL3hl
bi91dGlscy5jZmc8YnI+VXNpbmcgJmx0O2NsYXNzICYjMzk7Z3J1Yi5HcnViQ29uZi5HcnViQ29u
ZmlnRmlsZSYjMzk7Jmd0OyB0byBwYXJzZSAvYm9vdC9ncnViL21lbnUubHN0PGJyPjxicj7CoCDC
oCBweUdSVUIgwqB2ZXJzaW9uIDAuNjxicj7CoOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUkDxicj7CoOKUgiByb290IMKgIMKgIMKgIMKgIMKgIMKgKGhk
MCwwKSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoOKUgjxicj7CoOKUgiBrZXJuZWwgwqAgwqAgwqAgwqAgwqAvYm9v
dC92bWxpbnV6LTQuMTkuMC0xNy1hbWQ2NCByb290PS9kZXYveHZkYTIgcm8gZWxldiZndDsg4pSC
PGJyPsKg4pSCIGluaXRyZCDCoCDCoCDCoCDCoCDCoC9ib290L2luaXRyZC5pbWctNC4xOS4wLTE3
LWFtZDY0IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIOKUgjxicj7CoOKUgiDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoOKUgjxicj7CoOKU
giDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoOKUgjxi
cj7CoOKUgiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oOKUgjxicj7CoOKUgiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoOKUgjxicj7CoOKUgiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoOKUgjxicj7CoOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU
gOKUgOKUgOKUgOKUgOKUmDxicj7CoCDCoCDCoFVzZSB0aGUg4oaRIGFuZCDihpMga2V5cyB0byBz
ZWxlY3Qgd2hpY2ggZW50cnkgaXMgaGlnaGxpZ2h0ZWQuPGJyPsKgIMKgIMKgUHJlc3MgJiMzOTti
JiMzOTsgdG8gYm9vdCwgJiMzOTtlJiMzOTsgdG8gZWRpdCB0aGUgc2VsZWN0ZWQgY29tbWFuZCBp
biB0aGU8YnI+wqAgwqAgwqBib290IHNlcXVlbmNlLCAmIzM5O2MmIzM5OyBmb3IgYSBjb21tYW5k
LWxpbmUsICYjMzk7byYjMzk7IHRvIG9wZW4gYSBuZXcgbGluZTxicj7CoCDCoCDCoGFmdGVyICgm
IzM5O08mIzM5OyBmb3IgYmVmb3JlKSB0aGUgc2VsZWN0ZWQgbGluZSwgJiMzOTtkJiMzOTsgdG8g
cmVtb3ZlIHRoZTxicj7CoCDCoCDCoHNlbGVjdGVkIGxpbmUsIG9yIGVzY2FwZSB0byBnbyBiYWNr
IHRvIHRoZSBtYWluIG1lbnUuPGJyPjxicj48YnI+VHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxs
IGxhc3QpOjxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCBGaWxlICZxdW90Oy91c3IvbGliL3hlbi00LjE0L2Jpbi9weWdydWImcXVvdDssIGxp
bmUgODg0LCBpbiAmbHQ7bW9kdWxlJmd0Ozxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCByYWlzZSBSdW50aW1lRXJyb3IoJnF1b3Q7VW5hYmxlIHRvIGZpbmQgcGFydGl0aW9uIGNv
bnRhaW5pbmcga2VybmVsJnF1b3Q7KTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoFJ1bnRpbWVFcnJv
cjogVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9uIGNvbnRhaW5pbmcga2VybmVsPGJyPsKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbGlieGw6IGVycm9yOiBsaWJ4
bF9ib290bG9hZGVyLmM6NjQ4OmJvb3Rsb2FkZXJfZmluaXNoZWQ6IERvbWFpbiA0OmJvb3Rsb2Fk
ZXIgZmFpbGVkIC0gY29uc3VsdCBsb2dmaWxlIC92YXIvbG9nL3hlbi9ib290bG9hZGVyLjQubG9n
PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGxpYnhsOiBlcnJvcjogbGlieGxfZXhlYy5jOjExNzps
aWJ4bF9yZXBvcnRfY2hpbGRfZXhpdHN0YXR1czogYm9vdGxvYWRlciBbMTMxNl0gZXhpdGVkIHdp
dGggZXJyb3Igc3RhdHVzIDE8YnI+wqAgwqAgwqAgwqAgwqBsaWJ4bDogZXJyb3I6IGxpYnhsX2Ny
ZWF0ZS5jOjE1NzY6ZG9tY3JlYXRlX3JlYnVpbGRfZG9uZTogRG9tYWluIDQ6Y2Fubm90IChyZS0p
YnVpbGQgZG9tYWluOiAtMzxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCBsaWJ4bDogZXJyb3I6IGxpYnhsX2RvbWFpbi5jOjExODI6bGlieGxfX2Rlc3Ryb3lfZG9t
aWQ6IERvbWFpbiA0Ok5vbi1leGlzdGFudCBkb21haW48YnI+bGlieGw6IGVycm9yOiBsaWJ4bF9k
b21haW4uYzoxMTM2OmRvbWFpbl9kZXN0cm95X2NhbGxiYWNrOiBEb21haW4gNDpVbmFibGUgdG8g
ZGVzdHJveSBndWVzdDxicj5saWJ4bDogZXJyb3I6IGxpYnhsX2RvbWFpbi5jOjEwNjM6ZG9tYWlu
X2Rlc3Ryb3lfY2I6IERvbWFpbiA0OkRlc3RydWN0aW9uIG9mIGRvbWFpbiBmYWlsZWQ8YnI+YmN2
QGJjdmlibWIxOn4kwqA8L3NwYW4+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+
PGRpdj48L2Rpdj48ZGl2PkF0dGFjaGVkIGlzIHRoZSBsb2c8L2Rpdj48ZGl2PkFtIEkgZG9pbmcg
c29tZXRoaW5nIHdyb25nID8gb3IgaXMgdGhpcyBhIGtub3duIGlzc3VlID88L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2PlRoYW5rczwvZGl2PjxkaXY+Qmhhc2tlciBDIFYgPGJyPjwvZGl2PjwvZGl2
Pg0K
--0000000000007950e705cb36526a--
--0000000000007950e905cb36526c
Content-Type: text/x-log; charset="x-binaryenc"; name="bootloader.4.log"
Content-Disposition: attachment; filename="bootloader.4.log"
Content-Transfer-Encoding: base64
Content-ID: <f_kt6ll68k0>
X-Attachment-Id: f_kt6ll68k0

VXNpbmcgPGNsYXNzICdncnViLkdydWJDb25mLkdydWJDb25maWdGaWxlJz4gdG8gcGFyc2UgL2Jv
b3QvZ3J1Yi9tZW51LmxzdAobKEIbKTAbWzE7MjRyG1ttDxtbPzdoG1s/MWgbPRtbSBtbShtbPzFo
Gz0bWzFCICAgIHB5R1JVQiAgdmVyc2lvbiAwLjYNG1sxQiAbWzBtDmxxcXFxcXFxcXFxcXFxcXFx
cXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFr
Dw0bWzFCIBtbMG0OeA8gG1swOzdtD0RlYmlhbiBHTlUvTGludXgsIGtlcm5lbCA0LjE5LjAtMTct
YW1kNjQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAbW20PIBtbMG0OeA8NG1sxQiAbWzBt
DngPIERlYmlhbiBHTlUvTGludXgsIGtlcm5lbCA0LjE5LjAtMTctYW1kNjQgKHNpbmdsZS11c2Vy
IG1vZGUpG1sxMkMbWzBtDngPDRtbMUIgG1swbQ54DyBEZWJpYW4gR05VL0xpbnV4IDEwG1s1MkMb
WzBtDngPDRtbMUIgG1swbQ54DyBEZWJpYW4gR05VL0xpbnV4IDEwIChTaW5nbGUtVXNlcikbWzM4
QxtbMG0OeA8NG1sxQiAbWzBtDngPIERlYmlhbiBHTlUvTGludXggMTAgKERlZmF1bHQgS2VybmVs
KRtbMzVDG1swbQ54Dw0bWzFCIBtbMG0OeA8gRGViaWFuIEdOVS9MaW51eCAxMCAoRGVmYXVsdCBL
ZXJuZWwsIFNpbmdsZS1Vc2VyKRtbMjJDG1swbQ54Dw0bWzFCIBtbMG0OeA8bWzcyQxtbMG0OeA8N
G1sxQiAbWzBtDngPG1s3MkMbWzBtDngPDRtbMUIgG1swbQ5tcXFxcXFxcXFxcXFxcXFxcXFxcXFx
cXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxag8bWzFC
G1s3MEQbWzBtDg9Vc2UgdGhlIOKGkSBhbmQg4oaTIGtleXMgdG8gc2VsZWN0IHdoaWNoIGVudHJ5
IGlzIGhpZ2hsaWdodGVkLhtbMUIbWzU4RFByZXNzIGVudGVyIHRvIGJvb3QgdGhlIHNlbGVjdGVk
IE9TLCAnZScgdG8gZWRpdCB0aGUbWzFCG1s1MkRjb21tYW5kcyBiZWZvcmUgYm9vdGluZywgJ2En
IHRvIG1vZGlmeSB0aGUga2VybmVsIGFyZ3VtZW50cxtbMUIbWzU5RGJlZm9yZSBib290aW5nLCBv
ciAnYycgZm9yIGEgY29tbWFuZCBsaW5lLhtbN0EbWzI2QxtbMTJCG1s2OERXaWxsIGJvb3Qgc2Vs
ZWN0ZWQgZW50cnkgaW4gIDIgc2Vjb25kcxtbPzFoGz0NG1tKG1sxMkEbWzczQxtbMTJCG1s2OERX
aWxsIGJvb3Qgc2VsZWN0ZWQgZW50cnkgaW4gIDEgc2Vjb25kcxtbPzFoGz0NG1tKG1sxN0EbWzND
RGViaWFuIEdOVS9MaW51eCwga2VybmVsIDQuMTkuMC0xNy1hbWQ2NCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIBtbMUIbWzcwRBtbMDs3bQ9EZWJpYW4gR05VL0xpbnV4LCBrZXJuZWwgNC4x
OS4wLTE3LWFtZDY0IChzaW5nbGUtdXNlciBtb2RlKSAgICAgICAgICAgG1s0QhtbbQ8bWzEzQhtb
NjhEG1s/MWgbPRtbMThBCAgbWzA7N20PRGViaWFuIEdOVS9MaW51eCwga2VybmVsIDQuMTkuMC0x
Ny1hbWQ2NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBtbMUIbWzcwRBtbbQ9EZWJpYW4g
R05VL0xpbnV4LCBrZXJuZWwgNC4xOS4wLTE3LWFtZDY0IChzaW5nbGUtdXNlciBtb2RlKSAgICAg
ICAgICAgG1s0QhtbMTNCG1s2OEQbWz8xaBs9G1sxOEEICBtbMDs3bQ9yb290ICAgICAgICAgICAg
KGhkMCwwKSAgICAgICAgICAgICAgICAgG1sxQhtbNDBEG1ttD2tlcm5lbCAgICAgICAgICAvYm9v
dC92bWxpbnV6LTQuMTkuMC0xNy1hbWQ2NCByb290PS9kZXYveHZkYTIgcm8gZWxldj4bWzFCG1s3
MERpbml0cmQgICAgICAgICAgL2Jvb3QvaW5pdHJkLmltZy00LjE5LjAtMTctYW1kNjQbWzFCG1s0
OEQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAbWzFCG1szM0QgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAbWzFCG1szNkQgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgG1sxNDsxMkgnYicgdG8gYm9vdCwgJ2UnIHRvIGVkaXQg
dGhlIHNlbGVjdGVkIGNvbW1hbmQgaW4gdGhlG1sxQhtbNThEYm9vdCBzZXF1ZW5jZSwgJ2MnIGZv
ciBhIGNvbW1hbmQtbGluZSwgJ28nIHRvIG9wZW4gYSBuZXcgbGluZRtbMUIbWzYxRGFmdGVyICgn
TycgZm9yIGJlZm9yZSkgdGhlIHNlbGVjdGVkIGxpbmUsICdkJyB0byByZW1vdmUgdGhlG1sxQhtb
NTlEc2VsZWN0ZWQgbGluZSwgb3IgZXNjYXBlIHRvIGdvIGJhY2sgdG8gdGhlIG1haW4gbWVudS4b
WzExQRtbMTVDG1s/MWgbPRtbMkEbWzcwRHJvb3QgICAgICAgICAgICAoaGQwLDApICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAbWzFCG1s3MEQbWzA7N20Pa2Vy
bmVsICAgICAgICAgIC9ib290L3ZtbGludXotNC4xOS4wLTE3LWFtZDY0IHJvb3Q9L2Rldi94dmRh
MiBybyBlbGV2PhtbMUIbW20PG1s/MWgbPRtbPzFsGz4bWzI0OzFIDRtbPzFsGz5UcmFjZWJhY2sg
KG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgRmlsZSAiL3Vzci9saWIveGVuLTQuMTQvYmluL3B5
Z3J1YiIsIGxpbmUgODg0LCBpbiA8bW9kdWxlPgogICAgcmFpc2UgUnVudGltZUVycm9yKCJVbmFi
bGUgdG8gZmluZCBwYXJ0aXRpb24gY29udGFpbmluZyBrZXJuZWwiKQpSdW50aW1lRXJyb3I6IFVu
YWJsZSB0byBmaW5kIHBhcnRpdGlvbiBjb250YWluaW5nIGtlcm5lbAo=
--0000000000007950e905cb36526c--


From xen-users-bounces@lists.xenproject.org Sun Sep 05 12:33:09 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 05 Sep 2021 12:33:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.179040.325210 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMrJw-0003Av-Hj; Sun, 05 Sep 2021 12:32:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 179040.325210; Sun, 05 Sep 2021 12:32:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMrJw-0003An-EP; Sun, 05 Sep 2021 12:32:24 +0000
Received: by outflank-mailman (input) for mailman id 179040;
 Sun, 05 Sep 2021 12:32:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SOoF=N3=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mMrJv-0003Ad-4G
 for xen-users@lists.xenproject.org; Sun, 05 Sep 2021 12:32:23 +0000
Received: from smtp-out1.suse.de (unknown [195.135.220.28])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 39793c14-b5e7-4d57-8194-7f1aea2b1103;
 Sun, 05 Sep 2021 12:32:22 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 6FA322219A;
 Sun,  5 Sep 2021 12:32:21 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id 4512913299;
 Sun,  5 Sep 2021 12:32:21 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id /kXHDtW4NGEVUwAAGKfGzw
 (envelope-from <jgross@suse.com>); Sun, 05 Sep 2021 12:32:21 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 39793c14-b5e7-4d57-8194-7f1aea2b1103
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1630845141; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=xH8NcnCN0g/l6on8GBn9yeQ1rl8xRYzkiI8av2fEMEc=;
	b=EYpH1T6bqaCtQo620ZkJ2iSuQlgxzONMOo6UpAOm03zU7cQvK3QYnlw93MjE528wQPyPe6
	T4TalEKQHHs7/DFTiubsNLe3g5bs4d60zCY8qzhx/PWj6yeF7bvT/AlcuWc2YNuDj4WuSw
	i8NeYxFLaAriL2Y5UUoV9t6cd/sVVZc=
Subject: Re: Kernel warning on driver-domain
To: "J. Roeleveld" <joost@antarean.org>, xen-users@lists.xenproject.org
References: <4342821.LvFx2qVVIh@iris>
From: Juergen Gross <jgross@suse.com>
Message-ID: <ca22aae6-bddc-ed70-5635-4de4733040d4@suse.com>
Date: Sun, 5 Sep 2021 14:32:20 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <4342821.LvFx2qVVIh@iris>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="9WA9xbyZ0qWNGPR3vDyjOAziwxE1keBQL"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--9WA9xbyZ0qWNGPR3vDyjOAziwxE1keBQL
Content-Type: multipart/mixed; boundary="j3sp1k3J0I1I60oGmGydpBFvcZqB4c5v3";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: "J. Roeleveld" <joost@antarean.org>, xen-users@lists.xenproject.org
Message-ID: <ca22aae6-bddc-ed70-5635-4de4733040d4@suse.com>
Subject: Re: Kernel warning on driver-domain
References: <4342821.LvFx2qVVIh@iris>
In-Reply-To: <4342821.LvFx2qVVIh@iris>

--j3sp1k3J0I1I60oGmGydpBFvcZqB4c5v3
Content-Type: multipart/mixed;
 boundary="------------FA5A88AEA4760ACF53806980"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------FA5A88AEA4760ACF53806980
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 04.09.21 08:45, J. Roeleveld wrote:
> Hi,
>=20
> I am getting semi-regular warnings in the dmesg about block devices sha=
red to other Domains from a driver-domain.
>=20
> The dmesg/kernel trace is at the bottom of the email.
> All the traces show the same "call trace" and most of the numbers looks=
 similar.
> It's always a different domain and xvda-device that is listed.
>=20
> Versions (Dom0 and driver domain are kept at same versions)
> Kernel: 5.10.52
> Xen: 4.14.2

You are missing kernel patch 3a7956e25e1d7b3c148569e78895e1f3178122a9
which is in 5.10.62.


Juergen

--------------FA5A88AEA4760ACF53806980
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Description: OpenPGP public key
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------FA5A88AEA4760ACF53806980--

--j3sp1k3J0I1I60oGmGydpBFvcZqB4c5v3--

--9WA9xbyZ0qWNGPR3vDyjOAziwxE1keBQL
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmE0uNQFAwAAAAAACgkQsN6d1ii/Ey+f
swf8DOyXlqLDw2jnKbxftycMnKjb27DCwPa6KzS2vqSi/1tfP5x2vnD3Z8C2LabxD3RDJpCRkHhu
Sh+ZeWoiIrNHs9YRWe4B5K4i73FeuheAHZrCuc3O19AOhlifkybimJ1HyCr+LN0rGt6+4AAS+edx
zthcuPdANIRsgBUwmc2WfrYW757xss7QFHzBvs/DMr5+dXuRL1202pVHRtF+uVtxESoCFu/SWNm1
zcUSa1D2qWtyVaPRlpDyh3c9AaQKExT1UQzB/UsnSDhcmlcakXh29UafvmPWnEqgcMRgHS24a9z/
klJKrzUvfx/jUfj7dfPZSZRQR+U1rrRB1Rp61saZXQ==
=G3jN
-----END PGP SIGNATURE-----

--9WA9xbyZ0qWNGPR3vDyjOAziwxE1keBQL--


From xen-users-bounces@lists.xenproject.org Sun Sep 05 18:55:14 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 05 Sep 2021 18:55:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.179147.325326 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMxHi-0006F3-Fe; Sun, 05 Sep 2021 18:54:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 179147.325326; Sun, 05 Sep 2021 18:54:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mMxHi-0006Ev-Bl; Sun, 05 Sep 2021 18:54:30 +0000
Received: by outflank-mailman (input) for mailman id 179147;
 Sun, 05 Sep 2021 18:54:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=af6+=N3=unixindia.com=bhasker@srs-us1.protection.inumbo.net>)
 id 1mMxHh-0006Ep-5c
 for xen-users@lists.xenproject.org; Sun, 05 Sep 2021 18:54:29 +0000
Received: from mail-io1-xd2a.google.com (unknown [2607:f8b0:4864:20::d2a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1161edc8-b476-444f-8968-df81d2a2484f;
 Sun, 05 Sep 2021 18:54:28 +0000 (UTC)
Received: by mail-io1-xd2a.google.com with SMTP id m11so5942303ioo.6
 for <xen-users@lists.xenproject.org>; Sun, 05 Sep 2021 11:54:28 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 1161edc8-b476-444f-8968-df81d2a2484f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unixindia.com; s=mail;
        h=mime-version:from:date:message-id:subject:to;
        bh=8EXbD+WXl5NKpRmiVXpJMhwGpvUlCOqYs4PO3k+SXdM=;
        b=QhVxTKwXCOp/+GRfDwt5AusfMdwcmKgpbXoyasGZkYjJ23jNtJVeH8rNoR5qH8gEp/
         XZag0Tc02yo1GV0hDB1CnwQxyDJCe+hoeCwTNsyMCelrbp4RTD6/7mFnay/+uGAgvmuZ
         3EbQKfoE2OASvDAOSpy6YvIdZ04pWdnB0GtCtJEfW2OREj+ZGNAU9zHvwhxN1vfbKdx9
         hvKOunJ3icZrJ7NIFBgFVuIhBQRlBAr2JlizxbKnjVQXAvEmhqXoBvzJKuCHCZVf6+yc
         OobrX8cjTJZY2LybdFV+F8GOoZS7D/TGKwtE4hLaZ9DLIrMOgI2YZUU9emVo6KwgxXj4
         x45A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=8EXbD+WXl5NKpRmiVXpJMhwGpvUlCOqYs4PO3k+SXdM=;
        b=A8l1ZNw7wb2X+Ft8m0xgkOXAdRt6jzIyTRa3J7YTsH/0gTpYtZ9Twcj0/LzNXvoVCI
         1UkztE11H8t0ebTmrR5mqauyRENzSG6N75Sp7MJTGP8LOzgy99cuRWriqObcgAbdzgAG
         FGEqViYZme7broa4ygAI2T2HFjzk+/V1g9W5zWauRsoRx6R6oHxNQWmBvT2zgX1KdbrM
         jrxDqJQ4t+5YqaPx/hjjetmVu8d+Lm5vWeHhtjvpBkgdgvser7FRovo6+xV2DBmqi4//
         PtqWyXWJbMh1lOoYECIRDN3Tz38RtH8n+f5s/s+U7awkIycCTTFPa4g7SnanRrYBR/mZ
         dHuA==
X-Gm-Message-State: AOAM530oGgg/Q6eGAAuufOjl9u9rVPS1Ua74Zzl9QnWSD9FMC6jqJaW4
	uv3dmWGOJAdQoVdgw5QQCxW6cHaIwR7zCXvfkTWlowzW6HcaGg==
X-Google-Smtp-Source: ABdhPJxqI/bI7DpkdZFdjU9QxRKbM7tokg6OUGG/BLGUIkM3YYpxKmWQKyNu+HR8t3sEf72Lc1pg0f66PC3MmKV2NAo=
X-Received: by 2002:a6b:e70f:: with SMTP id b15mr6949747ioh.140.1630868067583;
 Sun, 05 Sep 2021 11:54:27 -0700 (PDT)
MIME-Version: 1.0
From: Bhasker C V <bhasker@unixindia.com>
Date: Sun, 5 Sep 2021 19:54:16 +0100
Message-ID: <CAPLCSGBP6vT4Fp2fr5RH7XVsRM=rJ2CGjuVN2aN0v8TSdAWOUg@mail.gmail.com>
Subject: USB passthrough
To: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000d81cc505cb440f26"

--000000000000d81cc505cb440f26
Content-Type: text/plain; charset="UTF-8"

Hi all,
 Sorry if I am starting a well-discussed thread again.
 I was reading through  https://wiki.xenproject.org/wiki/Xen_USB_Passthrough
and I understand that a xen_usbfront and xen_usbback.ko is needed.

Where do i get these ? I see these provided for k 2.6.18 but that is way
old. Is there a new version for these ?

I tried this:

$ sudo xl usbctrl-attach  14  type=pv version=2 ports=8
libxl: error: libxl_device.c:1103:device_backend_callback: Domain 14:unable
to add device with path /local/domain/0/backend/vusb/14/1
libxl: error: libxl_device.c:1402:device_addrm_aocomplete: Domain 14:Unable
to add vusb with id 1
libxl_device_usbctrl_add failed.

and any attempt to usbdev-attach fails too

Please help

Thanks and regards
Bhasker C V

--000000000000d81cc505cb440f26
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi all,</div><div>=C2=A0Sorry if I am starting a well=
-discussed thread again. <br></div><div>=C2=A0I was reading through=C2=A0 <=
a href=3D"https://wiki.xenproject.org/wiki/Xen_USB_Passthrough">https://wik=
i.xenproject.org/wiki/Xen_USB_Passthrough</a> and I understand that a xen_u=
sbfront and xen_usbback.ko is needed.</div><div><br></div><div>Where do i g=
et these ? I see these provided for k 2.6.18 but that is way old. Is there =
a new version for these ? <br></div><div><br></div><div>I tried this:</div>=
<div><span style=3D"color:rgb(61,133,198)"><br></span></div><div><span styl=
e=3D"color:rgb(61,133,198)">$ sudo xl usbctrl-attach =C2=A014 =C2=A0type=3D=
pv version=3D2 ports=3D8<br>libxl: error: libxl_device.c:1103:device_backen=
d_callback: Domain 14:unable to add device with path /local/domain/0/backen=
d/vusb/14/1<br>libxl: error: libxl_device.c:1402:device_addrm_aocomplete: D=
omain 14:Unable to add vusb with id 1<br>libxl_device_usbctrl_add failed.</=
span></div><div><br></div><div>and any attempt to usbdev-attach fails too</=
div><div><br></div><div>Please help <br></div><div><br></div><div>Thanks an=
d=C2=A0regards</div><div>Bhasker C V<br></div></div>

--000000000000d81cc505cb440f26--


From xen-users-bounces@lists.xenproject.org Mon Sep 06 00:07:00 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 06 Sep 2021 00:07:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.179234.325475 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mN29S-0003cJ-Qw; Mon, 06 Sep 2021 00:06:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 179234.325475; Mon, 06 Sep 2021 00:06:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mN29S-0003c9-Nq; Mon, 06 Sep 2021 00:06:18 +0000
Received: by outflank-mailman (input) for mailman id 179234;
 Mon, 06 Sep 2021 00:06:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZwUt=N4=unixindia.com=bhasker@srs-us1.protection.inumbo.net>)
 id 1mN29R-0003KK-7z
 for xen-users@lists.xenproject.org; Mon, 06 Sep 2021 00:06:17 +0000
Received: from mail-il1-x12c.google.com (unknown [2607:f8b0:4864:20::12c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c9b0b876-283f-4e17-971e-f92a3236fa09;
 Mon, 06 Sep 2021 00:06:11 +0000 (UTC)
Received: by mail-il1-x12c.google.com with SMTP id s16so5187365ilo.9
 for <xen-users@lists.xenproject.org>; Sun, 05 Sep 2021 17:06:11 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: c9b0b876-283f-4e17-971e-f92a3236fa09
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unixindia.com; s=mail;
        h=mime-version:from:date:message-id:subject:to;
        bh=YrSeOqW8u+/b+kn90enjWBIEuYxqEEa6/DzSOYyPeAY=;
        b=gcldrFazzFF5WFdtYu2jX31ym0BBjR1auHkSXfPsxG96O8W3kkW9MnNMGCjoS8drWX
         6jS8oPTp48QV+bW60fft6BFuU8yqSJMAmMwcCE7Qpvjf7MgjMxK5aqvMV1H8pzrH/k8r
         qA2INpgGQJb19vRncTdl1jj4zsNTSvsH85ttq5L10Nxj3csSuV9T0eRmcXmP6O4boU51
         Ri2kSZcSg0ct1b82FEWC6z4LJSxlP/2eMMIFZJp9EkAxx8iiitpo4TrLfa+t1/0ftmpM
         7uk4dldo2Am4l4e+JK/rcCKASX+gCs0drZy/EZ8o23RIneSg/zEH1O7cYEeqY25f9KJo
         tI/w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=YrSeOqW8u+/b+kn90enjWBIEuYxqEEa6/DzSOYyPeAY=;
        b=AO+CwAtes4D5r/B3IEX3jjLXyYoHECi9EsLMzmJW+w1ktB+ka6oCLsy+WiC6WB/zCU
         9wST2F7pA2yooF+/dzfJOYhwZ8dvwYMKve9puayarQ6j0Fhkq4CH5vF5obH0a5CbTYec
         O7kjE3qPmZ6UOrbly/kYuR1FXXEvuCz1S2jlbYcfCb2KP86vKgVILDKb3/RFcxvt2I6Q
         HE/JhP0SM8lM7QbeUZG0NBhvqsUe28bTYeWGoEICn2ZrBNz8bEWghrXGyqBZ+ZGFEEN6
         gAjWYL2AZhOfDLu3+koBO197KnWUU4St35oMkoWNBwuJ4gehaokLsiE4/6ix/MzFr3G7
         5YHA==
X-Gm-Message-State: AOAM531Gs52Lh8Z5G/r3qacFt+VCiKuS9TOWPB1uQ+MqpSqBY1yROlRQ
	CBTBaLyOiFfhR2BSiSvvHSB5gQyv4xAROXyCbnjYe41+FhE=
X-Google-Smtp-Source: ABdhPJzPn1n3lZMZ0mAzdV/rhaVBfKhWFWOE69Ok0QaASId1ikfXjRzDX3Cey8Kp8fWgoo2qabbpw4FUkkOhE1h4+U0=
X-Received: by 2002:a92:c109:: with SMTP id p9mr6578692ile.115.1630886771096;
 Sun, 05 Sep 2021 17:06:11 -0700 (PDT)
MIME-Version: 1.0
From: Bhasker C V <bhasker@unixindia.com>
Date: Mon, 6 Sep 2021 01:06:00 +0100
Message-ID: <CAPLCSGD9ZTaoMSqgo6EEdW4VYs9wrz+YvChR_Cx0Rkm8x5iq0w@mail.gmail.com>
Subject: DomU crashes when restored if it has pci passthrough
To: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000a918c205cb486aff"

--000000000000a918c205cb486aff
Content-Type: text/plain; charset="UTF-8"

Hi,
 I have a domU and that domU has network vf attached to it.
 The save and restore leads to crash of the domU after restore.
 Am I doing anything wrong?

Regards
Bhasker C V

--000000000000a918c205cb486aff
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi,</div><div>=C2=A0I have a domU and that domU has n=
etwork vf attached to it. <br></div><div>=C2=A0The save and restore leads t=
o crash of the domU after restore. <br></div><div>=C2=A0Am I doing anything=
 wrong?</div><div><br></div><div>Regards</div><div>Bhasker C V<br></div></d=
iv>

--000000000000a918c205cb486aff--


From xen-users-bounces@lists.xenproject.org Mon Sep 06 00:10:43 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 06 Sep 2021 00:10:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.179259.325505 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mN2De-00066u-Qg; Mon, 06 Sep 2021 00:10:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 179259.325505; Mon, 06 Sep 2021 00:10:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mN2De-00066j-Ld; Mon, 06 Sep 2021 00:10:38 +0000
Received: by outflank-mailman (input) for mailman id 179259;
 Mon, 06 Sep 2021 00:10:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZwUt=N4=unixindia.com=bhasker@srs-us1.protection.inumbo.net>)
 id 1mN2Dc-0005ob-Iq
 for xen-users@lists.xenproject.org; Mon, 06 Sep 2021 00:10:36 +0000
Received: from mail-io1-xd31.google.com (unknown [2607:f8b0:4864:20::d31])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9b75d4da-3332-45b8-a500-bc9c3a296e21;
 Mon, 06 Sep 2021 00:10:31 +0000 (UTC)
Received: by mail-io1-xd31.google.com with SMTP id n24so6579490ion.10
 for <xen-users@lists.xenproject.org>; Sun, 05 Sep 2021 17:10:30 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b75d4da-3332-45b8-a500-bc9c3a296e21
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unixindia.com; s=mail;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to;
        bh=GxF+ayA/gKbFEeVpCODk2PNYX4glvADmxV7Gx3ybgIU=;
        b=a8NpY+rVtH87EPNsbyAx0M6Um/29TPQMeYPdrsOjv/NqC1UYXo5ZP13tBiVQaI9Fee
         NRm5yL4TakS2hi/uhoP+BAthc2gxkEioNi+ANZjWV/jiLBMO/oqRDYiiIpnDVJ2gsxmQ
         9ToMF7Noge9u6nV/QysfeR25koGJKfRKYwyigATOyBjjmwEOtVHfIpRM294q7TjL01Og
         dUhSr2ZdosJlyqsPh+cjR3ZnkZz0Zs/iNko3hsVv3NTy5S7OOMQ8CqraDzpAK/3A3fDk
         xLDhB5QWPPKkX0U0RA+M091QxeE/45HCPVrNMK5RzqJP2KI3+vI4To9CpGYeqLqGWZwT
         tjmg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to;
        bh=GxF+ayA/gKbFEeVpCODk2PNYX4glvADmxV7Gx3ybgIU=;
        b=AY/LKebDEeV20MdBmJW2Sd71X6ZXTv6VHZCc8vMCNMocZ9KWp2yjTRinxdw6gluBvC
         iNleHNjxXS32uokD4ET2KWVqSG9CgyZtHfcMBjFjdghLMoQ2rtjPp1XY8TU6q7hGvyAd
         8NUxPp4wMROD+BHgPKzUaGGIvKcdPZocmK+GFkPVpereHLUeQ7JwxDb//+Qucf3es7zN
         FqMItqA60Xl+YmjFAKVBlRRgd3d/XMqpr573c3PnM1K9QAC3b9QDRQU9YnuWkeC6NXhq
         xOcscHcGHa9IZ0gZdb9+C8SzKk5UjUaSDg49oTgdlSyt55El5QA6E36Xe5RcbL7C1n0j
         E8SA==
X-Gm-Message-State: AOAM5316FdiIGY1pkBLG+wsJPyqNHVwlOwm2EK4rRQK9+IlKaGCFavY+
	2yYxsBXzZihrHbJG5czhqulFNIuFhMcNa8jAmrhxCL4pcwhPUA==
X-Google-Smtp-Source: ABdhPJzmlGrjP9v8qzWH6l5kaYjSyu5HD1L9QeBkTQuvo0jy1HBRGTcHJYUOCBUpM+mCQagBFP/gvxx7+hS33W+ySPI=
X-Received: by 2002:a6b:f203:: with SMTP id q3mr7596862ioh.32.1630887030484;
 Sun, 05 Sep 2021 17:10:30 -0700 (PDT)
MIME-Version: 1.0
References: <CAPLCSGD9ZTaoMSqgo6EEdW4VYs9wrz+YvChR_Cx0Rkm8x5iq0w@mail.gmail.com>
In-Reply-To: <CAPLCSGD9ZTaoMSqgo6EEdW4VYs9wrz+YvChR_Cx0Rkm8x5iq0w@mail.gmail.com>
From: Bhasker C V <bhasker@unixindia.com>
Date: Mon, 6 Sep 2021 01:10:19 +0100
Message-ID: <CAPLCSGAsCi=WEy+=3Cit4_e_G=EfcN9TB4B1CkeVxyJvc7o7EQ@mail.gmail.com>
Subject: Re: DomU crashes when restored if it has pci passthrough
To: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="0000000000001f044005cb487a35"

--0000000000001f044005cb487a35
Content-Type: text/plain; charset="UTF-8"

Ignore me on this
https://wiki.xenproject.org/wiki/Xen_PCI_Passthrough
says it is not possible

On Mon, Sep 6, 2021 at 1:06 AM Bhasker C V <bhasker@unixindia.com> wrote:

> Hi,
>  I have a domU and that domU has network vf attached to it.
>  The save and restore leads to crash of the domU after restore.
>  Am I doing anything wrong?
>
> Regards
> Bhasker C V
>

--0000000000001f044005cb487a35
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Ignore me on this <br></div><div><a href=3D"https://w=
iki.xenproject.org/wiki/Xen_PCI_Passthrough">https://wiki.xenproject.org/wi=
ki/Xen_PCI_Passthrough</a></div><div>says it is not possible<br></div></div=
><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mo=
n, Sep 6, 2021 at 1:06 AM Bhasker C V &lt;<a href=3D"mailto:bhasker@unixind=
ia.com">bhasker@unixindia.com</a>&gt; wrote:<br></div><blockquote class=3D"=
gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(20=
4,204,204);padding-left:1ex"><div dir=3D"ltr"><div>Hi,</div><div>=C2=A0I ha=
ve a domU and that domU has network vf attached to it. <br></div><div>=C2=
=A0The save and restore leads to crash of the domU after restore. <br></div=
><div>=C2=A0Am I doing anything wrong?</div><div><br></div><div>Regards</di=
v><div>Bhasker C V<br></div></div>
</blockquote></div>

--0000000000001f044005cb487a35--


From xen-users-bounces@lists.xenproject.org Mon Sep 06 19:28:07 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 06 Sep 2021 19:28:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.180229.326802 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNKH9-0003Vc-Dq; Mon, 06 Sep 2021 19:27:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 180229.326802; Mon, 06 Sep 2021 19:27:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNKH9-0003VU-AR; Mon, 06 Sep 2021 19:27:27 +0000
Received: by outflank-mailman (input) for mailman id 180229;
 Mon, 06 Sep 2021 19:27:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4nFA=N4=citrix.com=Andrew.Cooper3@srs-us1.protection.inumbo.net>)
 id 1mNKH7-0003VO-T5
 for xen-users@lists.xenproject.org; Mon, 06 Sep 2021 19:27:25 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 76499510-0f48-11ec-b0b7-12813bfff9fa;
 Mon, 06 Sep 2021 19:27:24 +0000 (UTC)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 76499510-0f48-11ec-b0b7-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1630956444;
  h=subject:to:references:cc:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=YiUT4mNjlZ92jk3RwIuC/v40/jTL0JJz3cuHc6HT3CE=;
  b=bqZvMwPik9E/dlI6xjSQhFZ6z/XLBBeAYbgeT4tTZyjFN5pFRl+g5h3Z
   rLa+h8b4Jsor1gsV6S500phZbsEIUCpjilqowr92Uz7EzH9OCuPxZF/AF
   wNleulWBv89id2uaz4YL/BobadM+kx3dvKZCD2TmagWbVfL9cfvXrPkN0
   M=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: muftSrz5kPvlD9/8HA8ixQ+XB8VqvebWULeKAvwli3Goy1hGAGRhGgS9qyErASdkKDgksYD4tW
 3UXeWt4I8W+wHPjc0R/EmDzZlg8THlv9mUUV86YVpKhlGR5yWdvw9BERKagx/hC1GvCgzciHnX
 Nq+JRGPgDWzvnclp+k1xNxqysOLssoLpbmiT0fAKme1nFwiEGzuEP/3d7LhFiD4vedwv2ZYu9R
 L+ZZmlJFEdXbPdqPxUcBnyi0vTRu6FppTUEdIVfKvzQxVosCXG9//LYvaqUHl3/0gx+BVPwEfi
 3F4X5CoaiBFy9pk81shadGVy
X-SBRS: 5.1
X-MesageID: 52117783
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:vFpb9a9FPigGqSG8CoZuk+FPdb1zdoMgy1knxilNoENuHfBwxv
 rDoB1E73LJYVYqOU3Jmbi7Sc29qADnhOFICO4qTMuftWjdyRaVxeRZg7cKrAeQYxEWmtQts5
 uINpIOcuEYbmIK/foSgjPIaurIqePvmMvD5Za8vgRQpENRGsZdBm9Ce3em+yZNNWt77PQCZf
 +hD4Z81kGdkSN9VLXEOpBJZZmOm/T70LbdJTIWDR8u7weDyRuu9b7BChCdmjMTSSlGz7sO+X
 XM11WR3NTsj9iLjjvnk0PD5ZVfn9XsjvNFGcy3k8AQbhHhkByhaohNU6CL+Bo1vOaswlA3l8
 SkmWZuA+1Dr1fqOk2lqxrk3AftlB4o9n/Z0FedxUDupMToLQhKQPZptMZ8SF/0+kAgtNZz3O
 ZgxGSCradaChvGgWDU+8XIfwsCrDv2nVMS1cooy1BPW4oXb7Fc6aYF+llOLZsGFCXmrKg6De
 hVCt3G7vo+SyLbU5nghBgr/DWQZAV2Iv/fKXJy/fB9kgIm3UyR9nFohvD2xRw7hdQAo5ot3Z
 WNDk0nrsAWcie6BZgNc9vpevHHf1Aldyi8eV56EW6XZp3vBEi936IfwI9Frt1CK6Z4gafbpv
 z6ISVlXCgJChrTNfE=
X-IronPort-AV: E=Sophos;i="5.85,273,1624334400"; 
   d="scan'208";a="52117783"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I/p6R6dXyjhuqaq8YcR+fIG9mhyXkOUAurGrEy4KswqPdaDfvEC8kU2w0D4PDQXnvrRN1qua4A2xSVzSVZJIkdEe+4nhT+k7KsQ2ygfYXiXSP6dz9oa+/q+67BuTHb9AJYohML78/DP4++KmMUtmqF1+8SjHkBaMtSFy5NjvpmDH8v3XJ5MLnM0OCbWTZYm0thhVfYdy8Hag95jm6NJsLtDMOPoP2M2SiuVgSo/wXxu0030n2XtTFNcfT9bLNdctmZ3EuP732zryuOTG6xTs6avVsFMcUJS4Z95dalICpBD6JZvovZuS0mjTaxWa+pgQZaq2z3C5qZD/K7cAQJ5sqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=YiUT4mNjlZ92jk3RwIuC/v40/jTL0JJz3cuHc6HT3CE=;
 b=lm83mPmT8xLKC+iEsopt4sfgdY5m3voxhqYD4E1/mulXQ3fy0dJykKotMTbvUatWeZBLpfB2bGAvRYNCzg9gHSXtNE4fW7crPGOBp2r0NxOL1jWrY4QvyhNdPoBgFotXCxvoHjAWiiPdM7D4sL0hqDOfm8yLs6WiG+6OfDTI6tXWT5wjB+z/jDMBOgXhvn70Qnb8tclHxvFMibrWbsvpFdaSjjhbEQBOfbwErN1b+G1SjY+fCoWVgxmioMlfWa/lCSDcrfxEfDPjvIkgMSC3LAJeKsFDI2ces6wCppSd1rz4wyqzNQ81t95WtSuXY7G+MU/vrSFOqIV8nfx7qVAInw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YiUT4mNjlZ92jk3RwIuC/v40/jTL0JJz3cuHc6HT3CE=;
 b=rK7GqcBhPhf+jCDtJyCMZXbEAWx/r8UrO2FCakqhlgO8XF53exF3VVaB42E29YcVEu8h2hrXoMI2B9L/YXcgNGGjHpsou2Hml8gRLI0FQe3BPzTkk6wdzT1YJfoiOguttz0Bgq1fyOfe1yyRX84mHY7rn+0s0BeayF89CSfsZJs=
Subject: Re: DomU crashes when restored if it has pci passthrough
To: Bhasker C V <bhasker@unixindia.com>, <xen-users@lists.xenproject.org>,
	<xen-devel@lists.xenproject.org>
References: <CAPLCSGD9ZTaoMSqgo6EEdW4VYs9wrz+YvChR_Cx0Rkm8x5iq0w@mail.gmail.com>
CC: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>, Anthony PERARD
	<anthony.perard@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <65f4630f-546e-57e8-7147-b5add37d594e@citrix.com>
Date: Mon, 6 Sep 2021 20:27:15 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.14.0
In-Reply-To: <CAPLCSGD9ZTaoMSqgo6EEdW4VYs9wrz+YvChR_Cx0Rkm8x5iq0w@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0456.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:e::36) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6221555b-8e66-4d15-1bcf-08d9716c590b
X-MS-TrafficTypeDiagnostic: BY5PR03MB5000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB5000556A10E6BF9460C4975BBAD29@BY5PR03MB5000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eFNOS8bYy2gBtslgL45WsNV7fJjcEwe/qiNHKoXk+07DMLQIjHAxKfapJiRCihaEICAM7amsw7zFKl6dTtwMFkElHe3F0epm3/9PHWlVSsubK1k2yk32UezesoNW4+87dIdBIIC0APWx5U8XffC+/5NuJAZtqzcl2ieIxlcdJQWVmTVp7SZgcegb7z/8XWSbyuBApzGJy3V6TZHFe90fxbsZpr9RL4gE+dOOh77G6e2R3ZjVzsZMEdDTfzoFgih4dhG4f6uoNCNAhgcBGxmrx2ilIL1gBNvwBzVWWzyOHbsTOD6mzMkiAXAjPoeTpGlCdEMx/piTWfUxuL95Q11Xgwu/bgLm7yDa+CaU/BV7Lz1XH97jqeQ6mLYuOALYajWAUQYjL2FpJ8xi9T6YLP5Y1yQPM6uTVeZwCgA0MTbqMJbdzoG9JJAiW7FHblxYkcA2r9T19OL2Wkgq9IoiYTBZNFtSh2S/StU838nkU6KEYPaG1zLLigU/fXZBhkOpzhVJzGMlf/tFAGwECyKMsq0SRFhIG4lzfst4SJJqnzMSw8IAsC0qwJptt5zjN2DMwissbzQwdsEyBoSFAxaOUpsZBMJd9aGkreq9xqExAWwbxLnuSjRTSjoLzvfKGYG0eVIoffgn0oSUB9OBQu+UY3MFk8xeM5s1YztpBzfdnFYC0EVSOPCAur90fwHqlGu7VmAKJvXjxcuJMn2qGInQcLgBoOTuVF5ekDw2wr/pNZADOYUOdGH51p/8eptuu/rKYjcv
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(39860400002)(396003)(346002)(376002)(136003)(4744005)(66476007)(83380400001)(2906002)(8676002)(8936002)(66946007)(66556008)(5660300002)(31686004)(107886003)(16576012)(31696002)(6666004)(36756003)(2616005)(54906003)(55236004)(478600001)(316002)(38100700002)(956004)(186003)(6486002)(86362001)(26005)(53546011)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VkFSQjlFMjVOZ1lreVF5Y3ZqQ0lUR0owZVEyUlg3MnpTbDdQM2JYRWdodnlN?=
 =?utf-8?B?dEh3emtrWVc4OFBwTXhvZ28zcUljdlVQdTV0S0NtaTBmRFo0b3RHbitGaW9m?=
 =?utf-8?B?S3ZUOVgyNDhueWUyNHBzVDZYZUNadkk5eXNCS3JWQzA1bkxwZmpUbVZtSGdv?=
 =?utf-8?B?djNyU2lnZ3BUN2xrTVM3Ly9hNXV1SjBPajdJM2RQU1pYWWc2R1ord2g0ZDNj?=
 =?utf-8?B?YVMwelY4cWdVbEw3elU1N3JvU0taT1RwRk5oWG9tZkFTUFNCTkhUS0E1MlRt?=
 =?utf-8?B?RDNXRmlrd0N5cjBOMnBoMVVGS2lwZ3ZnZmRoVm5tRkRuVHlFd2QxNDFIWDRV?=
 =?utf-8?B?Wkw3TUI3Znd0UWJNUHZwbTJia2p4bXZyUTdzcWJlcWRxN1pOZnVwNUREdGt2?=
 =?utf-8?B?Y1FBU2xmMTBkeU1LcllndnZDS0ZCNUo1Z2I2ejZQcWZoN29pV3Z4YVJVTjNv?=
 =?utf-8?B?ak9Yd1BzMlpETGlDNWtIT0IrMWkrMUl3SGpkY0FFdHZaYVcyMkdCUW5rS1hT?=
 =?utf-8?B?QXZaTzdKSFVSZzdSMzlDMXl3UzNuVWxYemsxRnpOREZiQWZtaHgxd290bkV0?=
 =?utf-8?B?L2hyY3lXZGhzbnJCTDhZREIxN2FwaS90RkNmdzUyVUYvMUVpYXRWK0Q3Q3g2?=
 =?utf-8?B?d2VraDk0b0dJQktsNkNVakhzdlo1N2orQVIyc1FMWDArQVZCdGpGK0x6b24r?=
 =?utf-8?B?aDMzWTBkNDNlZytKN2JmUzFmbWdLdVY1NTFDQ25EaWhIblFRKzk0b3V3YjJQ?=
 =?utf-8?B?cFpwVTJPVnhBSTc1bVVOY2diSU1EcFljWVZ0Y3ZCSWRrcUM1THE0T2N3a0t2?=
 =?utf-8?B?dmZIM1Zwb3lNZ3VYcHdDN0EwejJ3NzFCRnovZ1hXd25rZk04OVV6OHN5dklj?=
 =?utf-8?B?RWdZNnZhb3RXN0NRbkNwQS85TGFKQWRyUUxwR1FlODFZK1AzSHlsQnU1N1dl?=
 =?utf-8?B?azdDcUJaaUc0THNZelpxRFJUSmdwd2JFTm00UnlhK0JNbTgwcy9WY1JNQzIz?=
 =?utf-8?B?eENsSHBZMjlWZVl1aTQ0Z2pnN2s2R29COHQzL1dVK0pDSWlDdUFHVnFVWi9O?=
 =?utf-8?B?L2VhblVQaHV2RHRkc0doY05HYW16eHZxejJpMXMxNHlLOEVLcW5mQllyOFVY?=
 =?utf-8?B?dzNtU3ZGNktlcW5KRVU3SnFsRjQrZ3lZSVhoak85YjIwNXgzckxTMXYxbW1O?=
 =?utf-8?B?c2xHMGZLTWhiR1h1MlZWRTliS0w1MjdOT0pkbEJ1Nk91aTJ0bloxeTVZSTAr?=
 =?utf-8?B?b3hUQ2pmWTRtZmhqM0Zyc1I0dTAvbDJMdVNnZmMzekc4ZVVlRVVLdElxcCtn?=
 =?utf-8?B?RS9BOVl2dDFRcTZJS2x1dUtrcmNrSUN2eFdCSjZENFdNb00rZGR2ZSswaUlY?=
 =?utf-8?B?UVdFbGpEdVR3MGZSUjJhZVU3dFp2TEZKenFPMW4wYkQwQ3lza3hrOC8vazVF?=
 =?utf-8?B?NkhYMlk1bWxpMExMb3piM1pZUC9lQ1B3cHpTeENIMUg4Y1F2TnVPTGtUby9H?=
 =?utf-8?B?eFhCaXN6ck95V2tQV3ZRbkNZM0xwdGJMcWppVFE2dnpDQlg1d3ZaU201aUxX?=
 =?utf-8?B?SlhIdjZCMTFhemk3enlyUjQ0UXdVSGVqNld4NUlWYm9FR2laUHZYc0h5RVc2?=
 =?utf-8?B?YmphVE5XR2UvWXoxOTY1eXNQQXlhZDVTcTRCeE9TSlBuTk9uaWNsRzVBM2RS?=
 =?utf-8?B?VCs0cGx6ZjgwbEwyK2ZyZjY0NitmNUQvTlduSW1yUThXUFlER1R1Qi9mbThv?=
 =?utf-8?Q?Pr82dw0aXxI4Q+07sRWbh1/o+e/ML6OGVmgTpxc?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 6221555b-8e66-4d15-1bcf-08d9716c590b
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2021 19:27:21.5631
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LXgfyeaaLSrj5imdTwnouNIIU4vfJ/FkHQEhEtoipGOtncKN4khFUcCbJ/dZTeiCBqD9VF42AJn7kJ17McBvxAteXn99IMbrBnVzzpno1Ms=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5000
X-OriginatorOrg: citrix.com

On 06/09/2021 01:06, Bhasker C V wrote:
> Hi,
>  I have a domU and that domU has network vf attached to it.
>  The save and restore leads to crash of the domU after restore.
>  Am I doing anything wrong?

xl save/restore really ought to give up early and refuse the operation. 
CC-ing the toolstack maintainers.

It is an error that it continues and creates a corrupt vm image.

~Andrew


From xen-users-bounces@lists.xenproject.org Tue Sep 07 06:47:00 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 07 Sep 2021 06:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.180425.327088 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNUs4-0000SO-OP; Tue, 07 Sep 2021 06:46:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 180425.327088; Tue, 07 Sep 2021 06:46:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNUs4-0000SG-Ku; Tue, 07 Sep 2021 06:46:16 +0000
Received: by outflank-mailman (input) for mailman id 180425;
 Tue, 07 Sep 2021 06:46:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wicJ=N5=antarean.org=joost@srs-us1.protection.inumbo.net>)
 id 1mNUs2-0000SA-EI
 for xen-users@lists.xenproject.org; Tue, 07 Sep 2021 06:46:14 +0000
Received: from gw2.antarean.org (unknown [141.105.125.208])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 4a47d08a-0fa7-11ec-b0d7-12813bfff9fa;
 Tue, 07 Sep 2021 06:46:12 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H3bPs2YVWz8vVL
 for <xen-users@lists.xenproject.org>; Tue,  7 Sep 2021 08:45:53 +0200 (CEST)
Received: from gw2.antarean.org ([127.0.0.1])
 by localhost (gw2.antarean.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 8Y2_lLYseSrh for <xen-users@lists.xenproject.org>;
 Tue,  7 Sep 2021 08:45:52 +0200 (CEST)
Received: from mailstore1.adm.antarean.org (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H3bPr2JNlz8vVC
 for <xen-users@lists.xenproject.org>; Tue,  7 Sep 2021 08:45:52 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailstore1.adm.antarean.org (Postfix) with ESMTP id 4H3bQB51FSz2B
 for <xen-users@lists.xenproject.org>; Tue,  7 Sep 2021 08:46:10 +0200 (CEST)
Received: from mailstore1.adm.antarean.org ([127.0.0.1])
 by localhost (mailstore1.adm.antarean.org [127.0.0.1]) (amavisd-new,
 port 10024)
 with ESMTP id yOMSl_e8nn8r for <xen-users@lists.xenproject.org>;
 Tue,  7 Sep 2021 08:46:10 +0200 (CEST)
Received: from iris.localnet (iris.adm.antarean.org [10.55.16.47])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by mailstore1.adm.antarean.org (Postfix) with ESMTPSA id 4H3bQB1r0Nz29
 for <xen-users@lists.xenproject.org>; Tue,  7 Sep 2021 08:46:10 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a47d08a-0fa7-11ec-b0d7-12813bfff9fa
X-Virus-Scanned: amavisd-new at antarean.org
X-Virus-Scanned: amavisd-new at antarean.org
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=antarean.org;
	s=default; t=1630997170;
	bh=JTY3V63f5FJOLTTmPjDEiyjyU0E4/cS56Nf6JHifgTA=;
	h=From:To:Subject:Date:In-Reply-To:References;
	b=D0RmqLy2mi207ehoYiCZ37JmDqElbi8nezOfSoP4RUjferwVybdCGqvDla66CNaoj
	 Jkqo5eAFi7nF2r8rzHPkgc3859ZHdAtuqpMMTi2y8rm5BsUCMzbcGCkvBLrKBWUmam
	 GdCqxbRUuwV/DIlFXOFokTLtC4nS4Q+R/iK27SBc=
From: "J. Roeleveld" <joost@antarean.org>
To: xen-users@lists.xenproject.org
Subject: Re: Kernel warning on driver-domain (Worse, boot-failure) using kernel 5.10.62)
Date: Tue, 07 Sep 2021 08:46:10 +0200
Message-ID: <4694422.31r3eYUQgx@iris>
In-Reply-To: <ca22aae6-bddc-ed70-5635-4de4733040d4@suse.com>
References: <4342821.LvFx2qVVIh@iris> <ca22aae6-bddc-ed70-5635-4de4733040d4@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

On Sunday, September 5, 2021 2:32:20 PM CEST Juergen Gross wrote:
> On 04.09.21 08:45, J. Roeleveld wrote:
> > Hi,
> > 
> > I am getting semi-regular warnings in the dmesg about block devices shared
> > to other Domains from a driver-domain.
> > 
> > The dmesg/kernel trace is at the bottom of the email.
> > All the traces show the same "call trace" and most of the numbers looks
> > similar. It's always a different domain and xvda-device that is listed.
> > 
> > Versions (Dom0 and driver domain are kept at same versions)
> > Kernel: 5.10.52
> > Xen: 4.14.2
> 
> You are missing kernel patch 3a7956e25e1d7b3c148569e78895e1f3178122a9
> which is in 5.10.62.

Thank you for this.
I just tried booting with 5.10.62, but it fails with the below error. I found 
a similar issue (not fully, as reported is for e1000e NIC, and I'm using 
mpt3sas) at:
https://lkml.org/lkml/2021/8/26/500

But, I'm not sure if this is actually the issue I am encountering. Currently 
back on 5.10.52 as that seems stable for now.

For this particular driver domain, I pass 2 HBA's (LSI SAS3008) to it using 
PCI-passthrough. The relevant lines in the config:
pci = ['81:00.0,permissive=1','82:00.0,permissive=1']

I added the "permissive" in the past due to warnings/errors (can't fully 
remember which) in the past as per:
https://wiki.xenproject.org/wiki/Xen_PCI_Passthrough#PV_guests_and_PCI_quirks

If anyone has any ideas/suggestions?

====
BUG: unable to handle page fault for address: ffffc9000c62900c
#PF: supervisor write access in kernel mode
#PF: error_code(0x0003) - permissions violation
PGD 1793aa4067 P4D 1793aa4067 PUD 1793aa3067 PMD 1000e1067 PTE 
80100000fbe4e075
Oops: 0003 [#1] SMP NOPTI
CPU: 3 PID: 713 Comm: udevd Tainted: P           O      5.10.62-gentoo-generic 
#1
RIP: e030:__pci_enable_msix_range+0x104/0x477
Code: 01 89 d6 89 54 24 08 c1 e6 04 e8 e4 9e bd ff 48 85 c0 49 89 c7 0f 84 2c 
03 00 00 8b 54 24 08 48 8d 48 0c be 01 00 00 00 31 c0 <89> 31 ff c0 48 83 c1 10 
39 c2 7f f4 48 89 ef e8 4d f8 ff ff 4d 85
RSP: e02b:ffffc9000dd3bab0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffc9000c62900c
RDX: 0000000000000060 RSI: 0000000000000001 RDI: 0000000000000000
RBP: ffff888100b89000 R08: 0000000000000000 R09: 00000000fbe4e5ff
R10: 00000000000fbe4e R11: 00000000000fbe4e R12: 0000000000000004
R13: 0000000000000000 R14: ffffc9000dd3bbd0 R15: ffffc9000c629000
FS:  00007fcf52a2c740(0000) GS:ffff889886f80000(0000) knlGS:0000000000000000
CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff8000007df270 CR3: 00000001040c6000 CR4: 0000000000050660
Call Trace:
 pci_alloc_irq_vectors_affinity+0x6f/0xe8
 mpt3sas_base_map_resources+0x4e9/0x7c2 [mpt3sas]
 mpt3sas_base_attach+0x113/0x17d3 [mpt3sas]
 _scsih_probe+0x753/0x850 [mpt3sas]
 pci_device_probe+0xc6/0x135
 really_probe+0x144/0x326
 driver_probe_device+0x63/0x92
 device_driver_attach+0x37/0x50
 __driver_attach+0x92/0x9a
 ? device_driver_attach+0x50/0x50
 bus_for_each_dev+0x6e/0xa4
 bus_add_driver+0x103/0x1b4
 driver_register+0x99/0xd2
 ? 0xffffffffa01fb000
 _mpt3sas_init+0x1a7/0x1000 [mpt3sas]
 do_one_initcall+0x72/0x16c
 ? kmem_cache_alloc_trace+0xdb/0x102
 do_init_module+0x56/0x1f3
 __do_sys_finit_module+0x94/0xbb
 do_syscall_64+0x33/0x40
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x7fcf52b878d9
Code: 48 8d 3d da 60 0c 00 0f 05 eb a4 66 0f 1f 44 00 00 48 89 f8 48 89 f7 48 
89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 
c3 48 8b 0d 77 25 0c 00 f7 d8 64 89 01 48
RSP: 002b:00007ffef026c478 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
RAX: ffffffffffffffda RBX: 000055f2b189e260 RCX: 00007fcf52b878d9
RDX: 0000000000000000 RSI: 000055f2b188b720 RDI: 0000000000000009
RBP: 0000000000020000 R08: 0000000000000000 R09: 000055f2b18a0140
R10: 0000000000000009 R11: 0000000000000246 R12: 000055f2b188b720
R13: 0000000000000000 R14: 000055f2b18a1320 R15: 0000000000000000
Modules linked in: zfs(PO+) zunicode(PO) zzstd(O) zlua(O) zcommon(PO) 
znvpair(PO) zavl(PO) icp(PO) spl(O) crct10dif_pclmul crc32_pclmul crc32c_intel 
ghash_clmulni_intel mpt3sas(+) scsi_transport_sas aesni_intel
CR2: ffffc9000c62900c
---[ end trace 96215648c76c40ac ]---
RIP: e030:__pci_enable_msix_range+0x104/0x477
Code: 01 89 d6 89 54 24 08 c1 e6 04 e8 e4 9e bd ff 48 85 c0 49 89 c7 0f 84 2c 
03 00 00 8b 54 24 08 48 8d 48 0c be 01 00 00 00 31 c0 <89> 31 ff c0 48 83 c1 10 
39 c2 7f f4 48 89 ef e8 4d f8 ff ff 4d 85
RSP: e02b:ffffc9000dd3bab0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffc9000c62900c
RDX: 0000000000000060 RSI: 0000000000000001 RDI: 0000000000000000
RBP: ffff888100b89000 R08: 0000000000000000 R09: 00000000fbe4e5ff
R10: 00000000000fbe4e R11: 00000000000fbe4e R12: 0000000000000004
R13: 0000000000000000 R14: ffffc9000dd3bbd0 R15: ffffc9000c629000
FS:  00007fcf52a2c740(0000) GS:ffff889886f80000(0000) knlGS:0000000000000000
CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff8000007df270 CR3: 00000001040c6000 CR4: 0000000000050660
udevd[679]: worker [713] terminated by signal 9 (Killed)
udevd[679]: worker [713] failed while handling '/devices/pci-0/
pci0000:00/0000:00:00.0'
====




From xen-users-bounces@lists.xenproject.org Wed Sep 08 12:29:12 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 12:29:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.181844.329190 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNwgt-0001Gp-Qe; Wed, 08 Sep 2021 12:28:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 181844.329190; Wed, 08 Sep 2021 12:28:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNwgt-0001Ge-Lg; Wed, 08 Sep 2021 12:28:35 +0000
Received: by outflank-mailman (input) for mailman id 181844;
 Wed, 08 Sep 2021 12:28:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aiV0=N6=xenbits.xen.org=iwj@srs-us1.protection.inumbo.net>)
 id 1mNwgs-0000wB-KH
 for xen-users@lists.xen.org; Wed, 08 Sep 2021 12:28:34 +0000
Received: from mail.xenproject.org (unknown [104.130.215.37])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 89e63179-d4a1-4c8a-a7ae-19edf7ed1ee0;
 Wed, 08 Sep 2021 12:28:23 +0000 (UTC)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mNwgb-0004Q2-Do; Wed, 08 Sep 2021 12:28:17 +0000
Received: from iwj by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <iwj@xenbits.xen.org>)
 id 1mNwgb-0005t1-CE; Wed, 08 Sep 2021 12:28:17 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 89e63179-d4a1-4c8a-a7ae-19edf7ed1ee0
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=+eTtHa9X8dbPGooWfB6LFRjJ0dBQugzbxCtJcYazIaI=; b=CALfCEjYZv13z/LZ0e48Yvcjbv
	fG0cfbLQApmAroNd5XRz8KxlLnPyDswqBy8fmomWKoy4NWuCPCwaQXeBMZGybPoM/TWahCkwObP03
	L/IBJT9nHOl8zwWk8exDd8Zdlg6aYtG0syBXPrBASc+VN/NAoe7QD+nMxT6Kmi4J0mm4=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 384 v3 (CVE-2021-28701) - Another race in
 XENMAPSPACE_grant_table handling
Message-Id: <E1mNwgb-0005t1-CE@xenbits.xenproject.org>
Date: Wed, 08 Sep 2021 12:28:17 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2021-28701 / XSA-384
                               version 3

            Another race in XENMAPSPACE_grant_table handling

UPDATES IN VERSION 3
====================

Public release.

ISSUE DESCRIPTION
=================

Guests are permitted access to certain Xen-owned pages of memory.  The
majority of such pages remain allocated / associated with a guest for
its entire lifetime.  Grant table v2 status pages, however, are
de-allocated when a guest switches (back) from v2 to v1.  Freeing
such pages requires that the hypervisor enforce that no parallel request
can result in the addition of a mapping of such a page to a guest.  That
enforcement was missing, allowing guests to retain access to pages
that were freed and perhaps re-used for other purposes.

Unfortunately, when XSA-379 was being prepared, this similar issue was
not noticed.

IMPACT
======

A malicious guest may be able to elevate its privileges to that of the
host, cause host or guest Denial of Service (DoS), or cause information
leaks.

VULNERABLE SYSTEMS
==================

All Xen versions from 4.0 onwards are affected.  Xen versions 3.4 and
older are not affected.

Only x86 HVM and PVH guests permitted to use grant table version 2
interfaces can leverage this vulnerability.  x86 PV guests cannot
leverage this vulnerability.  On Arm, grant table v2 use is explicitly
unsupported.

MITIGATION
==========

Running only PV guests will avoid this vulnerability.

Suppressing use of grant table v2 interfaces for HVM or PVH guests will
also avoid this vulnerability.

NOTE REGARDING EMBARGO
======================

Please note that the public embargo time for this advisory is
2021-09-08, two weeks later than XSA-378,379,380,382,383.

CREDITS
=======

This issue was discovered by Julien Grall of Amazon.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa384.patch           xen-unstable - Xen 4.15.x
xsa384-4.14.patch      Xen 4.14.x - 4.12.x
xsa384-4.11.patch      Xen 4.11.x

$ sha256sum xsa384*
3bf555e8b2a37dec361b86c0b6a3f59af2e1a24e3457ed92e0cfeaa662f1663a  xsa384.patch
435b431dc77d255031832dc265a8d5aa2f13f3b1a7de497b62ac2df5ad61da90  xsa384-4.11.patch
f98ec4c25fb122de6353eb7d9f5678dd09982f887bf201d6f178e9b647618c9a  xsa384-4.14.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or PV-guest-only mitigations described
above (or others which are substantially similar) is permitted during
the embargo, even on public-facing systems with untrusted guest users
and administrators.

HOWEVER, distribution of updated software is prohibited (except to other
members of the predisclosure list).

ADDITIONALLY, deployment of the grant table v2 disabling mitigation
described above *is* now (following the public release of XSA-379)
permitted during the embargo on public-facing systems with untrusted
guest users and administrators.  This is because (although such a
configuration change is recognizable by the affected guests) it is a
mitigation recommended in XSA-379, so such a change would not reveal
the existence of a further problem.

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.

(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQE/BAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmE4rD4MHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZ8S8H+ITq1u5AaK+N1wgsgztLJRh1cjFTDaLZdI0mypwV
+wPhNdw1FFH19wYDZhOJIzv3h5352YVUYs8P6HvhFWrsUaq5n4cz17wxUHch74r3
MUUU9WUdTffQrAAOSSK65yWTUewv/FglEWP55YFBDPqBJHpVWt2MMidmP6My6azK
GZAHSWU7+qNXbs4/OM+dQJyUJm6yZtAltVtVmiJdJ5bSZyqe+82zRMnS39jlkZEh
VwFnw6rdlPcYO/fNYi25bQSlXbFeruSJYK+omrrFsyd65Z4D5LyZc5CQkfRJgEt6
vMDsQR+5hrE/KXKr2mfyTx6nh0RdR8kcI2Wh017BYuLqhA==
=AEo5
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa384.patch"
Content-Disposition: attachment; filename="xsa384.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGRlYWwgd2l0aCBzdGF0dXMgZnJhbWUgbWFwcGluZyByYWNl
CgpPbmNlIGdudHRhYl9tYXBfZnJhbWUoKSBkcm9wcyB0aGUgZ3JhbnQgdGFi
bGUgbG9jaywgdGhlIE1GTiBpdCByZXBvcnRzCmJhY2sgdG8gaXRzIGNhbGxl
ciBpcyBmcmVlIHRvIG90aGVyIG1hbmlwdWxhdGlvbi4gSW4gcGFydGljdWxh
cgpnbnR0YWJfdW5wb3B1bGF0ZV9zdGF0dXNfZnJhbWVzKCkgbWlnaHQgZnJl
ZSBpdCwgYnkgYSByYWNpbmcgcmVxdWVzdCBvbgphbm90aGVyIENQVSwgdGh1
cyByZXN1bHRpbmcgaW4gYSByZWZlcmVuY2UgdG8gYSBkZWFsbG9jYXRlZCBw
YWdlIGdldHRpbmcKYWRkZWQgdG8gYSBkb21haW4ncyBQMk0uCgpPYnRhaW4g
YSBwYWdlIHJlZmVyZW5jZSBpbiBnbnR0YWJfbWFwX2ZyYW1lKCkgdG8gcHJl
dmVudCBmcmVlaW5nIG9mIHRoZQpwYWdlIHVudGlsIHhlbm1lbV9hZGRfdG9f
cGh5c21hcF9vbmUoKSBoYXMgYWN0dWFsbHkgY29tcGxldGVkIGl0cyBhY3Rp
bmcKb24gdGhlIHBhZ2UuIERvIHNvIHVuaWZvcm1seSwgZXZlbiBpZiBvbmx5
IHN0cmljdGx5IHJlcXVpcmVkIGZvciB2MgpzdGF0dXMgcGFnZXMsIHRvIGF2
b2lkIGV4dHJhIGNvbmRpdGlvbmFscyAod2hpY2ggdGhlbiB3b3VsZCBhbGwg
bmVlZCB0bwpiZSBrZXB0IGluIHN5bmMgZ29pbmcgZm9yd2FyZCkuCgpUaGlz
IGlzIENWRS0yMDIxLTI4NzAxIC8gWFNBLTM4NC4KClJlcG9ydGVkLWJ5OiBK
dWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgpTaWduZWQtb2ZmLWJ5
OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2VkLWJ5
OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgotLS0KdjI6IFB1
bGwgZ2V0X3BhZ2UoKSBlYXJsaWVyIGFuZCBmb2xkIGlmKClzLgoKLS0tIGEv
eGVuL2FyY2gvYXJtL21tLmMKKysrIGIveGVuL2FyY2gvYXJtL21tLmMKQEAg
LTE0MjAsNiArMTQyMCw4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBf
b25lKAogICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgIHJldHVybiBy
YzsKIAorICAgICAgICAvKiBOZWVkIHRvIHRha2UgY2FyZSBvZiB0aGUgcmVm
ZXJlbmNlIG9idGFpbmVkIGluIGdudHRhYl9tYXBfZnJhbWUoKS4gKi8KKyAg
ICAgICAgcGFnZSA9IG1mbl90b19wYWdlKG1mbik7CiAgICAgICAgIHQgPSBw
Mm1fcmFtX3J3OwogCiAgICAgICAgIGJyZWFrOwpAQCAtMTQ4Nyw5ICsxNDg5
LDEyIEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgIC8q
IE1hcCBhdCBuZXcgbG9jYXRpb24uICovCiAgICAgcmMgPSBndWVzdF9waHlz
bWFwX2FkZF9lbnRyeShkLCBnZm4sIG1mbiwgMCwgdCk7CiAKLSAgICAvKiBJ
ZiB3ZSBmYWlsIHRvIGFkZCB0aGUgbWFwcGluZywgd2UgbmVlZCB0byBkcm9w
IHRoZSByZWZlcmVuY2Ugd2UKLSAgICAgKiB0b29rIGVhcmxpZXIgb24gZm9y
ZWlnbiBwYWdlcyAqLwotICAgIGlmICggcmMgJiYgc3BhY2UgPT0gWEVOTUFQ
U1BBQ0VfZ21mbl9mb3JlaWduICkKKyAgICAvKgorICAgICAqIEZvciBYRU5N
QVBTUEFDRV9nbWZuX2ZvcmVpZ24gaWYgd2UgZmFpbGVkIHRvIGFkZCB0aGUg
bWFwcGluZywgd2UgbmVlZAorICAgICAqIHRvIGRyb3AgdGhlIHJlZmVyZW5j
ZSB3ZSB0b29rIGVhcmxpZXIuIEluIGFsbCBvdGhlciBjYXNlcyB3ZSBuZWVk
IHRvCisgICAgICogZHJvcCBhbnkgcmVmZXJlbmNlIHdlIHRvb2sgZWFybGll
ciAocGVyaGFwcyBpbmRpcmVjdGx5KS4KKyAgICAgKi8KKyAgICBpZiAoIHNw
YWNlID09IFhFTk1BUFNQQUNFX2dtZm5fZm9yZWlnbiA/IHJjIDogcGFnZSAh
PSBOVUxMICkKICAgICB7CiAgICAgICAgIEFTU0VSVChwYWdlICE9IE5VTEwp
OwogICAgICAgICBwdXRfcGFnZShwYWdlKTsKLS0tIGEveGVuL2FyY2gveDg2
L21tL3AybS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtMjcy
Niw2ICsyNzI2LDggQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUo
CiAgICAgICAgIHJjID0gZ250dGFiX21hcF9mcmFtZShkLCBpZHgsIGdwZm4s
ICZtZm4pOwogICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgIHJldHVy
biByYzsKKyAgICAgICAgLyogTmVlZCB0byB0YWtlIGNhcmUgb2YgdGhlIHJl
ZmVyZW5jZSBvYnRhaW5lZCBpbiBnbnR0YWJfbWFwX2ZyYW1lKCkuICovCisg
ICAgICAgIHBhZ2UgPSBtZm5fdG9fcGFnZShtZm4pOwogICAgICAgICBicmVh
azsKIAogICAgIGNhc2UgWEVOTUFQU1BBQ0VfZ21mbjoKLS0tIGEveGVuL2Nv
bW1vbi9ncmFudF90YWJsZS5jCisrKyBiL3hlbi9jb21tb24vZ3JhbnRfdGFi
bGUuYwpAQCAtNDA5Nyw3ICs0MDk3LDE2IEBAIGludCBnbnR0YWJfbWFwX2Zy
YW1lKHN0cnVjdCBkb21haW4gKmQsIHUKICAgICB9CiAKICAgICBpZiAoICFy
YyApCi0gICAgICAgIGdudHRhYl9zZXRfZnJhbWVfZ2ZuKGd0LCBzdGF0dXMs
IGlkeCwgZ2ZuKTsKKyAgICB7CisgICAgICAgIC8qCisgICAgICAgICAqIE1h
a2Ugc3VyZSBnbnR0YWJfdW5wb3B1bGF0ZV9zdGF0dXNfZnJhbWVzKCkgd29u
J3QgKHN1Y2Nlc3NmdWxseSkKKyAgICAgICAgICogZnJlZSB0aGUgcGFnZSB1
bnRpbCBvdXIgY2FsbGVyIGhhcyBjb21wbGV0ZWQgaXRzIG9wZXJhdGlvbi4K
KyAgICAgICAgICovCisgICAgICAgIGlmICggZ2V0X3BhZ2UobWZuX3RvX3Bh
Z2UoKm1mbiksIGQpICkKKyAgICAgICAgICAgIGdudHRhYl9zZXRfZnJhbWVf
Z2ZuKGd0LCBzdGF0dXMsIGlkeCwgZ2ZuKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgcmMgPSAtRUJVU1k7CisgICAgfQogCiAgICAgZ3JhbnRfd3Jp
dGVfdW5sb2NrKGd0KTsKIAo=

--=separator
Content-Type: application/octet-stream; name="xsa384-4.11.patch"
Content-Disposition: attachment; filename="xsa384-4.11.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGRlYWwgd2l0aCBzdGF0dXMgZnJhbWUgbWFwcGluZyByYWNl
CgpPbmNlIGdudHRhYl9tYXBfZnJhbWUoKSBkcm9wcyB0aGUgZ3JhbnQgdGFi
bGUgbG9jaywgdGhlIE1GTiBpdCByZXBvcnRzCmJhY2sgdG8gaXRzIGNhbGxl
ciBpcyBmcmVlIHRvIG90aGVyIG1hbmlwdWxhdGlvbi4gSW4gcGFydGljdWxh
cgpnbnR0YWJfdW5wb3B1bGF0ZV9zdGF0dXNfZnJhbWVzKCkgbWlnaHQgZnJl
ZSBpdCwgYnkgYSByYWNpbmcgcmVxdWVzdCBvbgphbm90aGVyIENQVSwgdGh1
cyByZXN1bHRpbmcgaW4gYSByZWZlcmVuY2UgdG8gYSBkZWFsbG9jYXRlZCBw
YWdlIGdldHRpbmcKYWRkZWQgdG8gYSBkb21haW4ncyBQMk0uCgpPYnRhaW4g
YSBwYWdlIHJlZmVyZW5jZSBpbiBnbnR0YWJfbWFwX2ZyYW1lKCkgdG8gcHJl
dmVudCBmcmVlaW5nIG9mIHRoZQpwYWdlIHVudGlsIHhlbm1lbV9hZGRfdG9f
cGh5c21hcF9vbmUoKSBoYXMgYWN0dWFsbHkgY29tcGxldGVkIGl0cyBhY3Rp
bmcKb24gdGhlIHBhZ2UuIERvIHNvIHVuaWZvcm1seSwgZXZlbiBpZiBvbmx5
IHN0cmljdGx5IHJlcXVpcmVkIGZvciB2MgpzdGF0dXMgcGFnZXMsIHRvIGF2
b2lkIGV4dHJhIGNvbmRpdGlvbmFscyAod2hpY2ggdGhlbiB3b3VsZCBhbGwg
bmVlZCB0bwpiZSBrZXB0IGluIHN5bmMgZ29pbmcgZm9yd2FyZCkuCgpUaGlz
IGlzIENWRS0yMDIxLTI4NzAxIC8gWFNBLTM4NC4KClJlcG9ydGVkLWJ5OiBK
dWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgpTaWduZWQtb2ZmLWJ5
OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2VkLWJ5
OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKLS0tIGEveGVu
L2FyY2gvYXJtL21tLmMKKysrIGIveGVuL2FyY2gvYXJtL21tLmMKQEAgLTEy
MzgsNiArMTIzOCw4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25l
KAogICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgIHJldHVybiByYzsK
IAorICAgICAgICAvKiBOZWVkIHRvIHRha2UgY2FyZSBvZiB0aGUgcmVmZXJl
bmNlIG9idGFpbmVkIGluIGdudHRhYl9tYXBfZnJhbWUoKS4gKi8KKyAgICAg
ICAgcGFnZSA9IG1mbl90b19wYWdlKG1mbik7CiAgICAgICAgIHQgPSBwMm1f
cmFtX3J3OwogCiAgICAgICAgIGJyZWFrOwpAQCAtMTMwNCw5ICsxMzA2LDEy
IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgIC8qIE1h
cCBhdCBuZXcgbG9jYXRpb24uICovCiAgICAgcmMgPSBndWVzdF9waHlzbWFw
X2FkZF9lbnRyeShkLCBnZm4sIG1mbiwgMCwgdCk7CiAKLSAgICAvKiBJZiB3
ZSBmYWlsIHRvIGFkZCB0aGUgbWFwcGluZywgd2UgbmVlZCB0byBkcm9wIHRo
ZSByZWZlcmVuY2Ugd2UKLSAgICAgKiB0b29rIGVhcmxpZXIgb24gZm9yZWln
biBwYWdlcyAqLwotICAgIGlmICggcmMgJiYgc3BhY2UgPT0gWEVOTUFQU1BB
Q0VfZ21mbl9mb3JlaWduICkKKyAgICAvKgorICAgICAqIEZvciBYRU5NQVBT
UEFDRV9nbWZuX2ZvcmVpZ24gaWYgd2UgZmFpbGVkIHRvIGFkZCB0aGUgbWFw
cGluZywgd2UgbmVlZAorICAgICAqIHRvIGRyb3AgdGhlIHJlZmVyZW5jZSB3
ZSB0b29rIGVhcmxpZXIuIEluIGFsbCBvdGhlciBjYXNlcyB3ZSBuZWVkIHRv
CisgICAgICogZHJvcCBhbnkgcmVmZXJlbmNlIHdlIHRvb2sgZWFybGllciAo
cGVyaGFwcyBpbmRpcmVjdGx5KS4KKyAgICAgKi8KKyAgICBpZiAoIHNwYWNl
ID09IFhFTk1BUFNQQUNFX2dtZm5fZm9yZWlnbiA/IHJjIDogcGFnZSAhPSBO
VUxMICkKICAgICB7CiAgICAgICAgIEFTU0VSVChwYWdlICE9IE5VTEwpOwog
ICAgICAgICBwdXRfcGFnZShwYWdlKTsKLS0tIGEveGVuL2FyY2gveDg2L21t
LmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ3NTEsNiArNDc1MSw4
IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgICAgICAg
ICAgcmMgPSBnbnR0YWJfbWFwX2ZyYW1lKGQsIGlkeCwgZ3BmbiwgJm1mbik7
CiAgICAgICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgICAgICByZXR1
cm4gcmM7CisgICAgICAgICAgICAvKiBOZWVkIHRvIHRha2UgY2FyZSBvZiB0
aGUgcmVmIG9idGFpbmVkIGluIGdudHRhYl9tYXBfZnJhbWUoKS4gKi8KKyAg
ICAgICAgICAgIHBhZ2UgPSBtZm5fdG9fcGFnZShtZm4pOwogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIGNhc2UgWEVOTUFQU1BBQ0VfZ21mbjoKICAg
ICAgICAgewotLS0gYS94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKKysrIGIv
eGVuL2NvbW1vbi9ncmFudF90YWJsZS5jCkBAIC0zOTY0LDcgKzM5NjQsMTYg
QEAgaW50IGdudHRhYl9tYXBfZnJhbWUoc3RydWN0IGRvbWFpbiAqZCwgdQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm1mbiwg
MCk7CiAKICAgICBpZiAoICFyYyApCi0gICAgICAgIGdudHRhYl9zZXRfZnJh
bWVfZ2ZuKGd0LCBzdGF0dXMsIGlkeCwgZ2ZuKTsKKyAgICB7CisgICAgICAg
IC8qCisgICAgICAgICAqIE1ha2Ugc3VyZSBnbnR0YWJfdW5wb3B1bGF0ZV9z
dGF0dXNfZnJhbWVzKCkgd29uJ3QgKHN1Y2Nlc3NmdWxseSkKKyAgICAgICAg
ICogZnJlZSB0aGUgcGFnZSB1bnRpbCBvdXIgY2FsbGVyIGhhcyBjb21wbGV0
ZWQgaXRzIG9wZXJhdGlvbi4KKyAgICAgICAgICovCisgICAgICAgIGlmICgg
Z2V0X3BhZ2UobWZuX3RvX3BhZ2UoKm1mbiksIGQpICkKKyAgICAgICAgICAg
IGdudHRhYl9zZXRfZnJhbWVfZ2ZuKGd0LCBzdGF0dXMsIGlkeCwgZ2ZuKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmMgPSAtRUJVU1k7CisgICAg
fQogCiAgICAgZ3JhbnRfd3JpdGVfdW5sb2NrKGd0KTsKIAo=

--=separator
Content-Type: application/octet-stream; name="xsa384-4.14.patch"
Content-Disposition: attachment; filename="xsa384-4.14.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiBnbnR0YWI6IGRlYWwgd2l0aCBzdGF0dXMgZnJhbWUgbWFwcGluZyByYWNl
CgpPbmNlIGdudHRhYl9tYXBfZnJhbWUoKSBkcm9wcyB0aGUgZ3JhbnQgdGFi
bGUgbG9jaywgdGhlIE1GTiBpdCByZXBvcnRzCmJhY2sgdG8gaXRzIGNhbGxl
ciBpcyBmcmVlIHRvIG90aGVyIG1hbmlwdWxhdGlvbi4gSW4gcGFydGljdWxh
cgpnbnR0YWJfdW5wb3B1bGF0ZV9zdGF0dXNfZnJhbWVzKCkgbWlnaHQgZnJl
ZSBpdCwgYnkgYSByYWNpbmcgcmVxdWVzdCBvbgphbm90aGVyIENQVSwgdGh1
cyByZXN1bHRpbmcgaW4gYSByZWZlcmVuY2UgdG8gYSBkZWFsbG9jYXRlZCBw
YWdlIGdldHRpbmcKYWRkZWQgdG8gYSBkb21haW4ncyBQMk0uCgpPYnRhaW4g
YSBwYWdlIHJlZmVyZW5jZSBpbiBnbnR0YWJfbWFwX2ZyYW1lKCkgdG8gcHJl
dmVudCBmcmVlaW5nIG9mIHRoZQpwYWdlIHVudGlsIHhlbm1lbV9hZGRfdG9f
cGh5c21hcF9vbmUoKSBoYXMgYWN0dWFsbHkgY29tcGxldGVkIGl0cyBhY3Rp
bmcKb24gdGhlIHBhZ2UuIERvIHNvIHVuaWZvcm1seSwgZXZlbiBpZiBvbmx5
IHN0cmljdGx5IHJlcXVpcmVkIGZvciB2MgpzdGF0dXMgcGFnZXMsIHRvIGF2
b2lkIGV4dHJhIGNvbmRpdGlvbmFscyAod2hpY2ggdGhlbiB3b3VsZCBhbGwg
bmVlZCB0bwpiZSBrZXB0IGluIHN5bmMgZ29pbmcgZm9yd2FyZCkuCgpUaGlz
IGlzIENWRS0yMDIxLTI4NzAxIC8gWFNBLTM4NC4KClJlcG9ydGVkLWJ5OiBK
dWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgpTaWduZWQtb2ZmLWJ5
OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2VkLWJ5
OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKLS0tIGEveGVu
L2FyY2gvYXJtL21tLmMKKysrIGIveGVuL2FyY2gvYXJtL21tLmMKQEAgLTE0
MjMsNiArMTQyMyw4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25l
KAogICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgIHJldHVybiByYzsK
IAorICAgICAgICAvKiBOZWVkIHRvIHRha2UgY2FyZSBvZiB0aGUgcmVmZXJl
bmNlIG9idGFpbmVkIGluIGdudHRhYl9tYXBfZnJhbWUoKS4gKi8KKyAgICAg
ICAgcGFnZSA9IG1mbl90b19wYWdlKG1mbik7CiAgICAgICAgIHQgPSBwMm1f
cmFtX3J3OwogCiAgICAgICAgIGJyZWFrOwpAQCAtMTQ5MCw5ICsxNDkyLDEy
IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgIC8qIE1h
cCBhdCBuZXcgbG9jYXRpb24uICovCiAgICAgcmMgPSBndWVzdF9waHlzbWFw
X2FkZF9lbnRyeShkLCBnZm4sIG1mbiwgMCwgdCk7CiAKLSAgICAvKiBJZiB3
ZSBmYWlsIHRvIGFkZCB0aGUgbWFwcGluZywgd2UgbmVlZCB0byBkcm9wIHRo
ZSByZWZlcmVuY2Ugd2UKLSAgICAgKiB0b29rIGVhcmxpZXIgb24gZm9yZWln
biBwYWdlcyAqLwotICAgIGlmICggcmMgJiYgc3BhY2UgPT0gWEVOTUFQU1BB
Q0VfZ21mbl9mb3JlaWduICkKKyAgICAvKgorICAgICAqIEZvciBYRU5NQVBT
UEFDRV9nbWZuX2ZvcmVpZ24gaWYgd2UgZmFpbGVkIHRvIGFkZCB0aGUgbWFw
cGluZywgd2UgbmVlZAorICAgICAqIHRvIGRyb3AgdGhlIHJlZmVyZW5jZSB3
ZSB0b29rIGVhcmxpZXIuIEluIGFsbCBvdGhlciBjYXNlcyB3ZSBuZWVkIHRv
CisgICAgICogZHJvcCBhbnkgcmVmZXJlbmNlIHdlIHRvb2sgZWFybGllciAo
cGVyaGFwcyBpbmRpcmVjdGx5KS4KKyAgICAgKi8KKyAgICBpZiAoIHNwYWNl
ID09IFhFTk1BUFNQQUNFX2dtZm5fZm9yZWlnbiA/IHJjIDogcGFnZSAhPSBO
VUxMICkKICAgICB7CiAgICAgICAgIEFTU0VSVChwYWdlICE9IE5VTEwpOwog
ICAgICAgICBwdXRfcGFnZShwYWdlKTsKLS0tIGEveGVuL2FyY2gveDg2L21t
LmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTQ2MjAsNiArNDYyMCw4
IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgICAgICAg
ICAgcmMgPSBnbnR0YWJfbWFwX2ZyYW1lKGQsIGlkeCwgZ3BmbiwgJm1mbik7
CiAgICAgICAgICAgICBpZiAoIHJjICkKICAgICAgICAgICAgICAgICByZXR1
cm4gcmM7CisgICAgICAgICAgICAvKiBOZWVkIHRvIHRha2UgY2FyZSBvZiB0
aGUgcmVmIG9idGFpbmVkIGluIGdudHRhYl9tYXBfZnJhbWUoKS4gKi8KKyAg
ICAgICAgICAgIHBhZ2UgPSBtZm5fdG9fcGFnZShtZm4pOwogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIGNhc2UgWEVOTUFQU1BBQ0VfZ21mbjoKICAg
ICAgICAgewotLS0gYS94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKKysrIGIv
eGVuL2NvbW1vbi9ncmFudF90YWJsZS5jCkBAIC00MTAyLDcgKzQxMDIsMTYg
QEAgaW50IGdudHRhYl9tYXBfZnJhbWUoc3RydWN0IGRvbWFpbiAqZCwgdQog
ICAgIH0KIAogICAgIGlmICggIXJjICkKLSAgICAgICAgZ250dGFiX3NldF9m
cmFtZV9nZm4oZ3QsIHN0YXR1cywgaWR4LCBnZm4pOworICAgIHsKKyAgICAg
ICAgLyoKKyAgICAgICAgICogTWFrZSBzdXJlIGdudHRhYl91bnBvcHVsYXRl
X3N0YXR1c19mcmFtZXMoKSB3b24ndCAoc3VjY2Vzc2Z1bGx5KQorICAgICAg
ICAgKiBmcmVlIHRoZSBwYWdlIHVudGlsIG91ciBjYWxsZXIgaGFzIGNvbXBs
ZXRlZCBpdHMgb3BlcmF0aW9uLgorICAgICAgICAgKi8KKyAgICAgICAgaWYg
KCBnZXRfcGFnZShtZm5fdG9fcGFnZSgqbWZuKSwgZCkgKQorICAgICAgICAg
ICAgZ250dGFiX3NldF9mcmFtZV9nZm4oZ3QsIHN0YXR1cywgaWR4LCBnZm4p
OworICAgICAgICBlbHNlCisgICAgICAgICAgICByYyA9IC1FQlVTWTsKKyAg
ICB9CiAKICAgICBncmFudF93cml0ZV91bmxvY2soZ3QpOwogCg==

--=separator--


From xen-users-bounces@lists.xenproject.org Wed Sep 08 13:02:45 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 13:02:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.181967.329356 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNxDI-0003YT-BL; Wed, 08 Sep 2021 13:02:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 181967.329356; Wed, 08 Sep 2021 13:02:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNxDI-0003YL-8G; Wed, 08 Sep 2021 13:02:04 +0000
Received: by outflank-mailman (input) for mailman id 181967;
 Wed, 08 Sep 2021 13:02:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=BQGP=N6=cg.tuwien.ac.at=adi@srs-us1.protection.inumbo.net>)
 id 1mNxDG-0003YF-9v
 for xen-users@lists.xen.org; Wed, 08 Sep 2021 13:02:02 +0000
Received: from iris.vrvis.at (unknown [92.60.8.8])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f4334ae0-10a4-11ec-b151-12813bfff9fa;
 Wed, 08 Sep 2021 13:02:00 +0000 (UTC)
Received: from lotta.org.vrvis.lan ([10.42.2.101] helo=lotta.localnet)
 by iris.vrvis.at with esmtpsa (TLS1.2:DHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <adi@cg.tuwien.ac.at>) id 1mNxDB-0004vB-Do
 for xen-users@lists.xen.org; Wed, 08 Sep 2021 15:01:59 +0200
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: f4334ae0-10a4-11ec-b151-12813bfff9fa
From: Adi Kriegisch <adi@cg.tuwien.ac.at>
To: xen-users@lists.xen.org
Date: Wed, 08 Sep 2021 15:01:57 +0200
Message-ID: <1686978.o9Jjsn7BNP@lotta>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"
X-Spam-Level: 
X-Spam-Status: No, score=-5.5 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Report: 
	* -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP
	* -4.5 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
Subject: pci passthrough on pv domain

Dear all,

I recently upgraded a small atom board server (C2550 cpu) from Debian
Buster to Bullseye, which corresponds to an upgrade from Xen 4.11 to
4.14 and noticed that pci passthrough does not work any more for pv
domains:

  | libxl: error: libxl_create.c:1107:libxl__domain_config_setdefault:
  |               passthrough not supported on this platform

I also tried attaching the pci device to the already running domU:

  | libxl: error: libxl_pci.c:1434:pci_add_dm_done:
  |               Domain 7:xc_assign_device failed: Operation not supported
  | libxl: error: libxl_pci.c:1721:device_pci_add_done:
  |               Domain 7:libxl__device_pci_add  failed for PCI device 0:3:0.0 (rc -3)
  | libxl: error: libxl_device.c:1407:device_addrm_aocomplete:
  |               unable to add device

The device itself is claimed by the pciback driver in Dom0 and gets
listed by 'xl pci-assignable-list'.
The domU itself is just a PV machine booted via pvgrub and has
  | pci=['03:00.0',]
in the config.

When using Xen 4.11, both kernel versions available on Debian, 4.19 (old
stable) and 5.10, do allow pci pass through. 'xl dmesg' shows
  | (XEN) I/O virtualisation disabled
for both versions of Xen.

Can anyone help me fix pci passthrough?

Thanks!
-- Adi





From xen-users-bounces@lists.xenproject.org Wed Sep 08 14:04:59 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 14:04:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182076.329504 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNyBT-0000uq-9b; Wed, 08 Sep 2021 14:04:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182076.329504; Wed, 08 Sep 2021 14:04:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNyBT-0000uj-6S; Wed, 08 Sep 2021 14:04:15 +0000
Received: by outflank-mailman (input) for mailman id 182076;
 Wed, 08 Sep 2021 14:04:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HCpb=N6=licoho.de=r.wagner@srs-us1.protection.inumbo.net>)
 id 1mNyBS-0000ud-D3
 for xen-users@lists.xen.org; Wed, 08 Sep 2021 14:04:14 +0000
Received: from licoho.de (unknown [2a02:c207:3001:4250::10])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 27b85666-562a-493a-8754-f4437a938f1f;
 Wed, 08 Sep 2021 14:04:12 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by as02.licoho.de (Postfix) with ESMTP id 149E7CF407C
 for <xen-users@lists.xen.org>; Wed,  8 Sep 2021 16:04:11 +0200 (CEST)
Received: from as02.licoho.de ([127.0.0.1])
 by localhost (as02.licoho.de [127.0.0.1]) (maiad, port 10026) with LMTP
 id 19929-07 for <xen-users@lists.xen.org>;
 Wed,  8 Sep 2021 16:04:10 +0200 (CEST)
Received: from licoho.de (localhost [127.0.0.1])
 by as02.licoho.de (Postfix) with ESMTP id 58B88CF506A
 for <xen-users@lists.xen.org>; Wed,  8 Sep 2021 16:04:10 +0200 (CEST)
Received: from saruman.licoho.internal (saruman.licoho.de [178.63.70.104])
 (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by as02.licoho.de (Postfix) with ESMTPSA id 0C64FCF407C
 for <xen-users@lists.xen.org>; Wed,  8 Sep 2021 16:04:09 +0200 (CEST)
Received: from saruman.licoho.internal (2a01:4f8:121:210a:176:9:200:253) by
 saruman.licoho.internal (2a01:4f8:121:210a:176:9:200:253) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2308.14; Wed, 8 Sep 2021 16:04:08 +0200
Received: from saruman.licoho.internal ([178.63.70.104]) by
 saruman.licoho.internal ([178.63.70.104]) with mapi id 15.01.2308.014; Wed, 8
 Sep 2021 16:04:08 +0200
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 27b85666-562a-493a-8754-f4437a938f1f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=licoho.de; h=from:to
	:subject:date:message-id:mime-version:content-type; s=dkim; bh=x
	sjdpcyu7n8oOOOy59ASRBf+2W1gDWZX4UVannJsuQE=; b=Ws/Hlue8/xz9Y+Ga9
	85oxCFEkoQPNLpRPEZy4l7qhZD5hM3IZYzHmfJhzdFY3ivt/naTfLB28da4hkQtH
	mqTX5ZYKsSRLCrK4M5IGoA81OyDSJFV32JYrZ1k6ZKeP4c+Gj/Qr3cL4pC8LvtTJ
	WyzZnIiB0OzQ2ZeuXpFF4EzeUzZfgq+cQRowBTTAiJ4S3s9e1kHeB8MHGLCRzV5q
	YDQ7zxK0MELcd3WICXuAW5T//f9yzmp7kRagwVaYiublJyDUQPjTHuR8qPOX2r8L
	6zxFUY3dWSnrnnlk2uc9eYaQqqlZDoHJRHi+gW9mD5Z1+diH3+aZ1lzd6678qaDL
	mD4WQ==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=licoho.de; h=from:to:subject
	:date:message-id:mime-version:content-type; q=dns; s=dkim; b=jKf
	cP17WhKyC3DVEvqquj7EIm5ucwzLgMHP2rM2smrpYUIguHWnzgimSmfCna8sYYI3
	uOoOU6TDS/pnSpmL88SskWoC0rRG3PzgjSzd1GaEVto5rm+CFcSpEVQcZhlbIz72
	cFavX9gyzmWSzaD296PJV9lEiKe+v1j33VqFpyab7Mew9gvWwsP75VPd/SxF7+Rq
	yXEvauyiSOzXFh7iKxm4pe+53rpisCiWQdcbRyu25/2J/jY5lsDeoAwQBIZ4E+mv
	s40EUqaIZwGDAPl/iN8TX+SUwYO7InGnjRqhxcP1zf+C3KU/0VZRTlnTzVWmpWWF
	mWU36CpPDEN98BLMcjg==
From: Ronny Wagner <r.wagner@licoho.de>
To: "xen-users@lists.xen.org" <xen-users@lists.xen.org>
Subject: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Topic: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Index: Adekt5lqbqjIFRkOSWeGjbByMf90lg==
Date: Wed, 8 Sep 2021 14:04:08 +0000
Message-ID: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
Accept-Language: de-DE, en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [62.245.250.29]
MIME-Version: 1.0
Content-Type: multipart/signed;
 protocol="application/pkcs7-signature";
 micalg="sha-256";
 boundary="----DD0456C09A478351248073FB7C26204E"
X-Virus-Scanned: TEST OUT VIRUS AND SPAM CHECK

This is an S/MIME signed message

------DD0456C09A478351248073FB7C26204E
Content-Language: de-DE
Content-Type: text/plain;
 charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hello,

i use a Debian 10 Host (Dom0) with Xen 4.14.2.

I update a Debian (i386) DomU from buster to bullseye with the new kernel 5=
.10.0-8-686-pae.

When i reboot the DomU, there is a fail message and the DomU don't start:
xc: error: panic: xc_dom_core.c:693: xc_dom_find_loader: no loader found: I=
nvalid kernel
libxl: error: libxl_dom.c:578:libxl__build_dom: xc_dom_parse_image failed
libxl: error: libxl_create.c:1576:domcreate_rebuild_done: Domain 40:cannot =
(re-)build domain: -3
libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain 40:Non-exist=
ant domain

DomU: ls -l /boot
-rw-r--r-- 1 root root       83 Aug  3 07:50 System.map-5.10.0-8-686-pae
-rw-r--r-- 1 root root   236162 Aug  3 07:50 config-5.10.0-8-686-pae
-rw-r--r-- 1 root root 23537504 Sep  8 14:44 initrd.img-5.10.0-8-686-pae
-rw-r--r-- 1 root root  4983136 Aug  3 07:50 vmlinuz-5.10.0-8-686-pae

I can use the old kernel linux-image-4.19.0-17-686-pae and boot the DomU.

DomU.cfg
bootloader =3D '/usr/local/lib/xen/bin/pygrub'
vcpus       =3D '4'
memory      =3D '768'
disk        =3D [
                  '/dev/vg0/DomU-disk,raw,xvda2,rw',
                  '/dev/vg0/DomU-swap,raw,xvda1,rw'
              ]
uuid =3D "XXXXXX"
vif         =3D [ 'ip=3DX.X.X.X, mac=3DXXXXXXXXXXXX' ]
boot=3D"c"
apic=3D1=20
acpi=3D1=20
pae=3D1
serial=3D"pty"
sdl=3D0
keymap=3D"de"
usb=3D1
stdvga=3D1
on_poweroff =3D 'destroy'
on_reboot   =3D 'restart'
on_crash    =3D 'restart'

Anybody any ideas why and how i solve the problem?

Thanks for any help ??

Ronny

------DD0456C09A478351248073FB7C26204E
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"

MIIHvAYJKoZIhvcNAQcCoIIHrTCCB6kCAQExDzANBglghkgBZQMEAgEFADALBgkq
hkiG9w0BBwGgggUDMIIE/zCCA+egAwIBAgIMfeSnXlhbW6X8xIPzMA0GCSqGSIb3
DQEBCwUAMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh
MTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMSBDQSAy
MDIwMB4XDTIxMDUwNjA3MTMwOFoXDTIyMTAwODA3NDkxMVowQDEbMBkGA1UEAwwS
ci53YWduZXJAbGljb2hvLmRlMSEwHwYJKoZIhvcNAQkBFhJyLndhZ25lckBsaWNv
aG8uZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDk1sPc/2P/L0TB
BM+bBGh9dVe5UQYqRCyCT9Xf+RZC+oRKAlLxQ/MWA4U27NQX70mqelxqqhMTYetH
TjERwKL6xbxfJgLjCw7lGdpubWK8iC5DoLtuDpC8VgARjJzZOZmHTJ0XjwThWCQf
vMoKvidblKGcDlXTTMo9F3ENLOAqvWapu1YUEj9Sd0y5HFpfyMK+BU7KNvZIxGxr
1arynPPBxtYKmldrZlKKHfugv8GFNP8/85mdgzRS52o/mGzfCJ1wH90hbLEFMK/6
/3M+HvfTHtz7M3xyWnnmSepZHYcpd8MW2pUuF61ccldW6YOzA0Ty6leUbUAYAOS7
roUVA5AlAgMBAAGjggHcMIIB2DAOBgNVHQ8BAf8EBAMCBaAwgaMGCCsGAQUFBwEB
BIGWMIGTME4GCCsGAQUFBzAChkJodHRwOi8vc2VjdXJlLmdsb2JhbHNpZ24uY29t
L2NhY2VydC9nc2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcnQwQQYIKwYBBQUH
MAGGNWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNp
Z24xY2EyMDIwMEwGA1UdIARFMEMwQQYJKwYBBAGgMgEoMDQwMgYIKwYBBQUHAgEW
Jmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMAkGA1UdEwQC
MAAwSQYDVR0fBEIwQDA+oDygOoY4aHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9n
c2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcmwwHQYDVR0RBBYwFIESci53YWdu
ZXJAbGljb2hvLmRlMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAfBgNV
HSMEGDAWgBSFu/DMxDa1CmJ2o5kuj7s6aq3FUTAdBgNVHQ4EFgQU4XIlp6phg4lv
HI6ntsvZ5DLBXPAwDQYJKoZIhvcNAQELBQADggEBAL2V12ISuNRMX22gIKdkInYb
Lvsylbq5cKOFEFonuci4X+EUR+SIoI6cV63+IOhsNMMHbT5pMDVBGeYatT58ez+l
heshgUBpnocoaagogHMK+MBj/lEPsLMna7wOMuSlJIUG/KpA3vABelfPZJxBbr+a
XXiDuZqCkvP1DG2ODsUojELCBvlXauCH86kZoGqh18FoOLQ/k3JIcp3xZwBTdTop
aojcyck7q5VnBiw56R1NElo7jsUuAdPoOojt+lSSxRC78B6s9ubn+MoSq6ge9rvF
cf9QvM5x59q01A8Pm8Pa7SjTnTHFP7lv6ZIrCkLNrd4/7LnkQCBaKNu/BtHj6yox
ggJ9MIICeQIBATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWdu
IG52LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24g
MSBDQSAyMDIwAgx95KdeWFtbpfzEg/MwDQYJYIZIAWUDBAIBBQCggeQwGAYJKoZI
hvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMjEwOTA4MTQwNDEw
WjAvBgkqhkiG9w0BCQQxIgQgxsS7mAYD38wmzr8vzxBv+fRm/Zif/bgqPFGNHu5v
p2AweQYJKoZIhvcNAQkPMWwwajALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsG
CWCGSAFlAwQBAjAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcN
AwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwDQYJKoZIhvcNAQEBBQAEggEA
1ZAWj8zJToMqbbewy43UfoXb7fM1J4tRqvHhM0jUJwwFWDsnFkBTlZCWiQPWnUax
NkvZt7q+ZwENlTfHzoifhQXhAAsuQKWkHBXxbaZ00QCq1sjc36IozHPJo90K4WQd
E8Bij0fy14hj9Ew4YcDVhDZioisZGoTh/YImy65OAICwepsNRsef4rOCoN401O3I
XYfdyu38N5qU52Lpdd5OMfUYM3GvrF4+YHQjJWmbOB+yZQdIdzguIbL84hZa7/Qd
hUi4H25RfPH9CvyuJbkJzYLAvXi6HGlAnMDYh/7akz5WyTxfGJg5a4GoUc09BeU3
mmnH3Ffu51ZDcs55Q8r4CA==

------DD0456C09A478351248073FB7C26204E--



From xen-users-bounces@lists.xenproject.org Wed Sep 08 14:32:56 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 14:32:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182126.329566 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNyd1-0007sP-M9; Wed, 08 Sep 2021 14:32:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182126.329566; Wed, 08 Sep 2021 14:32:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNyd1-0007sH-Ic; Wed, 08 Sep 2021 14:32:43 +0000
Received: by outflank-mailman (input) for mailman id 182126;
 Wed, 08 Sep 2021 14:32:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pe/B=N6=antarean.org=joost@srs-us1.protection.inumbo.net>)
 id 1mNyd0-0007s8-GQ
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 14:32:43 +0000
Received: from gw2.antarean.org (unknown [141.105.125.208])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id b0931f43-bebb-4fcf-95b7-fa8720a8a2e9;
 Wed, 08 Sep 2021 14:32:40 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H4Pj04h82z8vVL
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:31:48 +0200 (CEST)
Received: from gw2.antarean.org ([127.0.0.1])
 by localhost (gw2.antarean.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id FmPUKnVSof8W for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 16:31:48 +0200 (CEST)
Received: from mailstore1.adm.antarean.org (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H4Pj02yp2z8vVC
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:31:48 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailstore1.adm.antarean.org (Postfix) with ESMTP id 4H4Pjz2cndz2B
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:32:39 +0200 (CEST)
Received: from mailstore1.adm.antarean.org ([127.0.0.1])
 by localhost (mailstore1.adm.antarean.org [127.0.0.1]) (amavisd-new,
 port 10024)
 with ESMTP id lEtAV2pK-JaX for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 16:32:39 +0200 (CEST)
Received: from iris.localnet (iris.adm.antarean.org [10.55.16.47])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by mailstore1.adm.antarean.org (Postfix) with ESMTPSA id 4H4Pjz0r6lz29
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:32:39 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: b0931f43-bebb-4fcf-95b7-fa8720a8a2e9
X-Virus-Scanned: amavisd-new at antarean.org
X-Virus-Scanned: amavisd-new at antarean.org
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=antarean.org;
	s=default; t=1631111559;
	bh=Oz59ebTJ6Dj1uKDjTqPyM3PMBBXpWBEjQ7OePX6CfBk=;
	h=From:To:Subject:Date:In-Reply-To:References;
	b=etAIU42Buk+NXsmKrr7kvIBhwl1IF068RReitJusNFysi+rwr6CKZEFBBSq76BBAb
	 FBUaroueDI18Kbda/eOVrSTv/NQX6ELaD9GCJX+Ejtmz1qT815vdn3UprIjV2jem4B
	 RMqXJmsgABhvVs6RNZKnts/5JGM4rMUsCW92BPQw=
From: "J. Roeleveld" <joost@antarean.org>
To: xen-users@lists.xenproject.org
Subject: Re: pci passthrough on pv domain
Date: Wed, 08 Sep 2021 16:32:39 +0200
Message-ID: <5754475.lOV4Wx5bFT@iris>
In-Reply-To: <1686978.o9Jjsn7BNP@lotta>
References: <1686978.o9Jjsn7BNP@lotta>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

On Wednesday, September 8, 2021 3:01:57 PM CEST Adi Kriegisch wrote:
> Dear all,
> 
> I recently upgraded a small atom board server (C2550 cpu) from Debian
> Buster to Bullseye, which corresponds to an upgrade from Xen 4.11 to
> 4.14 and noticed that pci passthrough does not work any more for pv
> 
> domains:
>   | libxl: error: libxl_create.c:1107:libxl__domain_config_setdefault:
>   |               passthrough not supported on this platform
> 
> I also tried attaching the pci device to the already running domU:
>   | libxl: error: libxl_pci.c:1434:pci_add_dm_done:
>   |               Domain 7:xc_assign_device failed: Operation not supported
>   | 
>   | libxl: error: libxl_pci.c:1721:device_pci_add_done:
>   |               Domain 7:libxl__device_pci_add  failed for PCI device
>   |               0:3:0.0 (rc -3)
>   | 
>   | libxl: error: libxl_device.c:1407:device_addrm_aocomplete:
>   |               unable to add device
> 
> The device itself is claimed by the pciback driver in Dom0 and gets
> listed by 'xl pci-assignable-list'.
> The domU itself is just a PV machine booted via pvgrub and has
> 
>   | pci=['03:00.0',]
> 
> in the config.
> 
> When using Xen 4.11, both kernel versions available on Debian, 4.19 (old
> stable) and 5.10, do allow pci pass through. 'xl dmesg' shows
> 
>   | (XEN) I/O virtualisation disabled
> 
> for both versions of Xen.
> 
> Can anyone help me fix pci passthrough?

Not sure if I can, as I do get " (XEN) I/O virtualisation enabled ", but I can 
try.

>From what I read, you need I/O virtualisation enabled (or PV-enabled?) to get 
this to work. If it worked before, can you check the full "xl dmesg" to see if 
there is anything else that might indicate why it works in previous versions?

What exactly are you trying to passthrough?

--
Joost




From xen-users-bounces@lists.xenproject.org Wed Sep 08 14:52:52 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 14:52:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182171.329628 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNywF-00059Z-MD; Wed, 08 Sep 2021 14:52:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182171.329628; Wed, 08 Sep 2021 14:52:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNywF-00059R-IE; Wed, 08 Sep 2021 14:52:35 +0000
Received: by outflank-mailman (input) for mailman id 182171;
 Wed, 08 Sep 2021 14:52:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pe/B=N6=antarean.org=joost@srs-us1.protection.inumbo.net>)
 id 1mNywE-00059L-F5
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 14:52:34 +0000
Received: from gw1.antarean.org (unknown [194.145.200.214])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 65a91df8-10b4-11ec-b161-12813bfff9fa;
 Wed, 08 Sep 2021 14:52:33 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by gw1.antarean.org (Postfix) with ESMTP id 4H4PlM12tlz10cf
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:33:51 +0200 (CEST)
Received: from gw1.antarean.org ([127.0.0.1])
 by localhost (gw1.antarean.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 65gOA5eqs-ro for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 16:33:50 +0200 (CEST)
Received: from mailstore1.adm.antarean.org (localhost [127.0.0.1])
 by gw1.antarean.org (Postfix) with ESMTP id 4H4PlL6p6VzyQ3
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:33:50 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailstore1.adm.antarean.org (Postfix) with ESMTP id 4H4Pm86zpxz2B
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:34:32 +0200 (CEST)
Received: from mailstore1.adm.antarean.org ([127.0.0.1])
 by localhost (mailstore1.adm.antarean.org [127.0.0.1]) (amavisd-new,
 port 10024)
 with ESMTP id W2LuLW_82q4g for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 16:34:32 +0200 (CEST)
Received: from iris.localnet (iris.adm.antarean.org [10.55.16.47])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by mailstore1.adm.antarean.org (Postfix) with ESMTPSA id 4H4Pm859qVz29
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 16:34:32 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 65a91df8-10b4-11ec-b161-12813bfff9fa
X-Virus-Scanned: amavisd-new at antarean.org
X-Virus-Scanned: amavisd-new at antarean.org
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=antarean.org;
	s=default; t=1631111672;
	bh=h+GtRn5LdGAhhuR5WHKrZtEXXxsc92/4qwO7LXCXqsM=;
	h=From:To:Subject:Date:In-Reply-To:References;
	b=VUrrkgibiXnAb6ZgZFsPFVPerNg4WqL6FXyPTnj8yDH9t9HEt6lUfIt24QFL6Lo4Y
	 7iN40PTltGfDD0tNAkk+6QrP6xHO6/crqgjlPLssxGnAHHYys1q1fpjOgECCWHLkwf
	 oqtxu6RJhtPiQ2APCPkJNSlhpAi4dcqZxJMRAszg=
From: "J. Roeleveld" <joost@antarean.org>
To: xen-users@lists.xenproject.org
Subject: Re: Update DomU - Debian 11 - no loader found - Invalid kernel
Date: Wed, 08 Sep 2021 16:34:32 +0200
Message-ID: <4349187.LvFx2qVVIh@iris>
In-Reply-To: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

On Wednesday, September 8, 2021 4:04:08 PM CEST Ronny Wagner wrote:
> Hello,
> 
> i use a Debian 10 Host (Dom0) with Xen 4.14.2.
> 
> I update a Debian (i386) DomU from buster to bullseye with the new kernel
> 5.10.0-8-686-pae.
> 
> When i reboot the DomU, there is a fail message and the DomU don't start:
> xc: error: panic: xc_dom_core.c:693: xc_dom_find_loader: no loader found:
> Invalid kernel libxl: error: libxl_dom.c:578:libxl__build_dom:
> xc_dom_parse_image failed libxl: error:
> libxl_create.c:1576:domcreate_rebuild_done: Domain 40:cannot (re-)build
> domain: -3 libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
> 40:Non-existant domain
> 
> DomU: ls -l /boot
> -rw-r--r-- 1 root root       83 Aug  3 07:50 System.map-5.10.0-8-686-pae
> -rw-r--r-- 1 root root   236162 Aug  3 07:50 config-5.10.0-8-686-pae
> -rw-r--r-- 1 root root 23537504 Sep  8 14:44 initrd.img-5.10.0-8-686-pae
> -rw-r--r-- 1 root root  4983136 Aug  3 07:50 vmlinuz-5.10.0-8-686-pae
> 
> I can use the old kernel linux-image-4.19.0-17-686-pae and boot the DomU.
> 
> DomU.cfg
> bootloader = '/usr/local/lib/xen/bin/pygrub'
> vcpus       = '4'
> memory      = '768'
> disk        = [
>                   '/dev/vg0/DomU-disk,raw,xvda2,rw',
>                   '/dev/vg0/DomU-swap,raw,xvda1,rw'
>               ]
> uuid = "XXXXXX"
> vif         = [ 'ip=X.X.X.X, mac=XXXXXXXXXXXX' ]
> boot="c"
> apic=1
> acpi=1
> pae=1
> serial="pty"
> sdl=0
> keymap="de"
> usb=1
> stdvga=1
> on_poweroff = 'destroy'
> on_reboot   = 'restart'
> on_crash    = 'restart'
> 
> Anybody any ideas why and how i solve the problem?
> 
> Thanks for any help ??
> 
> Ronny

Did you update the grub.cfg file (MANUALLY) on the DOMU to point to the new 
kernel?
I don't use pygrub myself, but I understand it accesses the grub.cfg file to 
determine the kernel-image to use.

--
Joost




From xen-users-bounces@lists.xenproject.org Wed Sep 08 15:48:02 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 15:48:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182273.329775 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNznP-00023P-9N; Wed, 08 Sep 2021 15:47:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182273.329775; Wed, 08 Sep 2021 15:47:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mNznP-00023H-43; Wed, 08 Sep 2021 15:47:31 +0000
Received: by outflank-mailman (input) for mailman id 182273;
 Wed, 08 Sep 2021 15:47:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HCpb=N6=licoho.de=r.wagner@srs-us1.protection.inumbo.net>)
 id 1mNznM-00023B-VY
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 15:47:29 +0000
Received: from licoho.de (unknown [178.63.178.51])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b2797627-7060-4e07-8067-9db3e7ba3f76;
 Wed, 08 Sep 2021 15:47:25 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by as01.licoho.de (Postfix) with ESMTP id DF5D49C0A2
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 17:47:22 +0200 (CEST)
Received: from as01.licoho.de ([127.0.0.1])
 by localhost (as01.licoho.de [127.0.0.1]) (maiad, port 10026) with LMTP
 id 00481-08 for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 17:47:15 +0200 (CEST)
Received: from licoho.de (localhost [127.0.0.1])
 by as01.licoho.de (Postfix) with ESMTP id 45D419C8FF
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 17:47:15 +0200 (CEST)
Received: from saruman.licoho.internal (saruman.licoho.de [178.63.70.104])
 (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by as01.licoho.de (Postfix) with ESMTPSA id 0D7C79C0A2
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 17:47:14 +0200 (CEST)
Received: from saruman.licoho.internal (2a01:4f8:121:210a:178:63:131:114) by
 saruman.licoho.internal (2a01:4f8:121:210a:178:63:131:114) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2308.14; Wed, 8 Sep 2021 17:47:06 +0200
Received: from saruman.licoho.internal ([178.63.70.104]) by
 saruman.licoho.internal ([178.63.70.104]) with mapi id 15.01.2308.014; Wed, 8
 Sep 2021 17:47:06 +0200
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: b2797627-7060-4e07-8067-9db3e7ba3f76
Authentication-Results: as01.licoho.de/45D419C8FF;
	dkim=pass (2048-bit key; secure) header.d=licoho.de header.i=@licoho.de header.b="aOfuNyDO";
	dkim-atps=neutral
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=licoho.de; h=from:to
	:subject:date:message-id:references:in-reply-to:mime-version
	:content-type; s=dkim; bh=kTXvLMBeKG6oXBt6vXCBArV7G12RFNbNqAhnIY
	2uhmY=; b=aOfuNyDOFhckupjr/c6UdaoAGpSscwZ6woQvTc9lw7HzCLHPHfCMY6
	8EpZ+ksH7P+Y4OKen436I2IEd6N62Pj0Q7fodpIsMCpi3BhsyurfeJdcrV+W9l9K
	wBIrQA/tCHa4QyiaxIl4+fxLmvY0r88MNP01jUauulptuwFUfg91Er8QGF+voj1P
	gk7kDEI8p5KjUgTdQ+nPiTQGD1gJaOP4Uzy5R9SPI2DKygjP1YAkO+jnxK/vsLg1
	VHf1luEc9mbQT5zJKEueA1yOxrm4ciIK21kgbXHVAFtoEhAeR/+YE2AJnYJDnF/T
	jsgpzIJDt3PIeoTVFKh04Sw7z4PdtHTw==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=licoho.de; h=from:to:subject
	:date:message-id:references:in-reply-to:mime-version
	:content-type; q=dns; s=dkim; b=ptzwTK1S9I/5iKbi1fyQNrNhy2GzL+rR
	jFIWg1jS83533qFyeXOVhVIdPPyk5pJbMAMxxLPe1MlvEXpLk4N4LGa63T7dnp7S
	4aQoQ8HAtBPVkwV2qM+7smhny4E2PErKP3YZk27qWuo1VTj4PAFgCa7i1WzJAFvB
	D27/vo1CQv4qnsU+PVsHSxkftWrIzneqJcDvRqE712e8g8AJ+nfdZ79rZ2IjBn/H
	qtJRAeKmZpbZRP/5l2882LPH0od/Coad/v/GLVVILen0hHwHIjgjyKq/vwk6oViS
	m65DYW5S1fqpO3KwOaGs9mgjclYsarrtm3HcpsTZyAL8db6I9CQpRw==
From: Ronny Wagner <r.wagner@licoho.de>
To: "xen-users@lists.xenproject.org" <xen-users@lists.xenproject.org>
Subject: AW: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Topic: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Index: Adekt5lqbqjIFRkOSWeGjbByMf90lv//7IwA///L+AA=
Date: Wed, 8 Sep 2021 15:47:06 +0000
Message-ID: <8ea1a8ff5def479bbfff58947caaa5a6@licoho.de>
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
 <4349187.LvFx2qVVIh@iris>
In-Reply-To: <4349187.LvFx2qVVIh@iris>
Accept-Language: de-DE, en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [62.245.250.29]
MIME-Version: 1.0
Content-Type: multipart/signed;
 protocol="application/pkcs7-signature";
 micalg="sha-256";
 boundary="----128C2304F1D0A874A4E54830C7F8F672"
X-Virus-Scanned: TEST OUT VIRUS AND SPAM CHECK

This is an S/MIME signed message

------128C2304F1D0A874A4E54830C7F8F672
Content-Language: de-DE
Content-Type: text/plain;
 charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

Hi,

i use the /boot/grub/menu.lst:

default         0
timeout         2
title           Debian GNU/Linux 10
root            (hd0,0)
kernel          /vmlinuz root=3D/dev/xvda2 ro elevator=3Dnoop
initrd          /initrd.img

title           Debian GNU/Linux
root            (hd0,0)
kernel          /boot/vmlinuz-4.19.0-17-686-pae root=3D/dev/xvda2 ro elevat=
or=3Dnoop
initrd          /boot/initrd.img-4.19.0-17-686-pae

$ ls -l /
lrwxrwxrwx   1 root root        28 Sep  8 14:41 initrd.img -> boot/initrd.i=
mg-5.10.0-8-686-pae
lrwxrwxrwx   1 root root        25 Sep  8 14:41 vmlinuz -> boot/vmlinuz-5.1=
0.0-8-686-pae

I don't understand "no loader found", i can change to 4.19.0-17 and the Dom=
U started, but not with the 5.10.0-8.

Thanks for helping.

Ronny

-----Urspr=FCngliche Nachricht-----
Von: Xen-users <xen-users-bounces@lists.xenproject.org> Im Auftrag von J. R=
oeleveld
Gesendet: Mittwoch, 8. September 2021 16:35
An: xen-users@lists.xenproject.org
Betreff: Re: Update DomU - Debian 11 - no loader found - Invalid kernel

On Wednesday, September 8, 2021 4:04:08 PM CEST Ronny Wagner wrote:
> Hello,
>=20
> i use a Debian 10 Host (Dom0) with Xen 4.14.2.
>=20
> I update a Debian (i386) DomU from buster to bullseye with the new kernel
> 5.10.0-8-686-pae.
>=20
> When i reboot the DomU, there is a fail message and the DomU don't start:
> xc: error: panic: xc_dom_core.c:693: xc_dom_find_loader: no loader found:
> Invalid kernel libxl: error: libxl_dom.c:578:libxl__build_dom:
> xc_dom_parse_image failed libxl: error:
> libxl_create.c:1576:domcreate_rebuild_done: Domain 40:cannot (re-)build
> domain: -3 libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
> 40:Non-existant domain
>=20
> DomU: ls -l /boot
> -rw-r--r-- 1 root root       83 Aug  3 07:50 System.map-5.10.0-8-686-pae
> -rw-r--r-- 1 root root   236162 Aug  3 07:50 config-5.10.0-8-686-pae
> -rw-r--r-- 1 root root 23537504 Sep  8 14:44 initrd.img-5.10.0-8-686-pae
> -rw-r--r-- 1 root root  4983136 Aug  3 07:50 vmlinuz-5.10.0-8-686-pae
>=20
> I can use the old kernel linux-image-4.19.0-17-686-pae and boot the DomU.
>=20
> DomU.cfg
> bootloader =3D '/usr/local/lib/xen/bin/pygrub'
> vcpus       =3D '4'
> memory      =3D '768'
> disk        =3D [
>                   '/dev/vg0/DomU-disk,raw,xvda2,rw',
>                   '/dev/vg0/DomU-swap,raw,xvda1,rw'
>               ]
> uuid =3D "XXXXXX"
> vif         =3D [ 'ip=3DX.X.X.X, mac=3DXXXXXXXXXXXX' ]
> boot=3D"c"
> apic=3D1
> acpi=3D1
> pae=3D1
> serial=3D"pty"
> sdl=3D0
> keymap=3D"de"
> usb=3D1
> stdvga=3D1
> on_poweroff =3D 'destroy'
> on_reboot   =3D 'restart'
> on_crash    =3D 'restart'
>=20
> Anybody any ideas why and how i solve the problem?
>=20
> Thanks for any help ??
>=20
> Ronny

Did you update the grub.cfg file (MANUALLY) on the DOMU to point to the new=
=20
kernel?
I don't use pygrub myself, but I understand it accesses the grub.cfg file t=
o=20
determine the kernel-image to use.

--
Joost




------128C2304F1D0A874A4E54830C7F8F672
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"

MIIHvAYJKoZIhvcNAQcCoIIHrTCCB6kCAQExDzANBglghkgBZQMEAgEFADALBgkq
hkiG9w0BBwGgggUDMIIE/zCCA+egAwIBAgIMfeSnXlhbW6X8xIPzMA0GCSqGSIb3
DQEBCwUAMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh
MTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMSBDQSAy
MDIwMB4XDTIxMDUwNjA3MTMwOFoXDTIyMTAwODA3NDkxMVowQDEbMBkGA1UEAwwS
ci53YWduZXJAbGljb2hvLmRlMSEwHwYJKoZIhvcNAQkBFhJyLndhZ25lckBsaWNv
aG8uZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDk1sPc/2P/L0TB
BM+bBGh9dVe5UQYqRCyCT9Xf+RZC+oRKAlLxQ/MWA4U27NQX70mqelxqqhMTYetH
TjERwKL6xbxfJgLjCw7lGdpubWK8iC5DoLtuDpC8VgARjJzZOZmHTJ0XjwThWCQf
vMoKvidblKGcDlXTTMo9F3ENLOAqvWapu1YUEj9Sd0y5HFpfyMK+BU7KNvZIxGxr
1arynPPBxtYKmldrZlKKHfugv8GFNP8/85mdgzRS52o/mGzfCJ1wH90hbLEFMK/6
/3M+HvfTHtz7M3xyWnnmSepZHYcpd8MW2pUuF61ccldW6YOzA0Ty6leUbUAYAOS7
roUVA5AlAgMBAAGjggHcMIIB2DAOBgNVHQ8BAf8EBAMCBaAwgaMGCCsGAQUFBwEB
BIGWMIGTME4GCCsGAQUFBzAChkJodHRwOi8vc2VjdXJlLmdsb2JhbHNpZ24uY29t
L2NhY2VydC9nc2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcnQwQQYIKwYBBQUH
MAGGNWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNp
Z24xY2EyMDIwMEwGA1UdIARFMEMwQQYJKwYBBAGgMgEoMDQwMgYIKwYBBQUHAgEW
Jmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMAkGA1UdEwQC
MAAwSQYDVR0fBEIwQDA+oDygOoY4aHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9n
c2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcmwwHQYDVR0RBBYwFIESci53YWdu
ZXJAbGljb2hvLmRlMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAfBgNV
HSMEGDAWgBSFu/DMxDa1CmJ2o5kuj7s6aq3FUTAdBgNVHQ4EFgQU4XIlp6phg4lv
HI6ntsvZ5DLBXPAwDQYJKoZIhvcNAQELBQADggEBAL2V12ISuNRMX22gIKdkInYb
Lvsylbq5cKOFEFonuci4X+EUR+SIoI6cV63+IOhsNMMHbT5pMDVBGeYatT58ez+l
heshgUBpnocoaagogHMK+MBj/lEPsLMna7wOMuSlJIUG/KpA3vABelfPZJxBbr+a
XXiDuZqCkvP1DG2ODsUojELCBvlXauCH86kZoGqh18FoOLQ/k3JIcp3xZwBTdTop
aojcyck7q5VnBiw56R1NElo7jsUuAdPoOojt+lSSxRC78B6s9ubn+MoSq6ge9rvF
cf9QvM5x59q01A8Pm8Pa7SjTnTHFP7lv6ZIrCkLNrd4/7LnkQCBaKNu/BtHj6yox
ggJ9MIICeQIBATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWdu
IG52LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24g
MSBDQSAyMDIwAgx95KdeWFtbpfzEg/MwDQYJYIZIAWUDBAIBBQCggeQwGAYJKoZI
hvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMjEwOTA4MTU0NzE1
WjAvBgkqhkiG9w0BCQQxIgQg+HJcCVODlhjglm1qR0LKvOP3DSy9C+Yrhxspfxu1
m14weQYJKoZIhvcNAQkPMWwwajALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsG
CWCGSAFlAwQBAjAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcN
AwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwDQYJKoZIhvcNAQEBBQAEggEA
WW0KtqbkabgXE2NtFix0mcLrnhv3DJU+MN3GTum7WWlZWxEBL4oHrB7RpLL3ALCZ
0rwOjYioU1SFWHrluxrTpBCDOqoxBj2FbFBV84vAtN+oLdNVuE4GZw3Gue81MP9k
EXOe9xw42FsZ1zJDnpQptcYqqHHZtbLwTpAT2hDQr6FpO/V96HnG8ytocvXBLaF3
AAaYsP7NcI2DRrUYcMkdiwUZGvHvWRH8vdLdPCw7p8jaJToYjnXd+YrBqmwEssSM
p16HwXNKG5mYrOZxfN0o5xRFFOS4yTRuljxi31SyML5RemKYH/ZbvXm8q1bEPS4m
+cI9R7veYhLgE6tmNw6uOw==

------128C2304F1D0A874A4E54830C7F8F672--



From xen-users-bounces@lists.xenproject.org Wed Sep 08 19:14:12 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 19:14:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182338.329859 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO30e-0005uO-Sa; Wed, 08 Sep 2021 19:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182338.329859; Wed, 08 Sep 2021 19:13:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO30e-0005uH-O8; Wed, 08 Sep 2021 19:13:24 +0000
Received: by outflank-mailman (input) for mailman id 182338;
 Wed, 08 Sep 2021 19:13:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pe/B=N6=antarean.org=joost@srs-us1.protection.inumbo.net>)
 id 1mO30d-0005u9-Qi
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 19:13:23 +0000
Received: from gw2.antarean.org (unknown [141.105.125.208])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id d41fa6de-10d8-11ec-b182-12813bfff9fa;
 Wed, 08 Sep 2021 19:13:20 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H4Wwr33nyz8vVL
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 21:12:28 +0200 (CEST)
Received: from gw2.antarean.org ([127.0.0.1])
 by localhost (gw2.antarean.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id GcmnIFPGy7aA for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 21:12:28 +0200 (CEST)
Received: from mailstore1.adm.antarean.org (localhost [127.0.0.1])
 by gw2.antarean.org (Postfix) with ESMTP id 4H4Wwr15Ptz8vVC
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 21:12:28 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailstore1.adm.antarean.org (Postfix) with ESMTP id 4H4Wxq0Hk0z2B
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 21:13:19 +0200 (CEST)
Received: from mailstore1.adm.antarean.org ([127.0.0.1])
 by localhost (mailstore1.adm.antarean.org [127.0.0.1]) (amavisd-new,
 port 10024)
 with ESMTP id iz69JOXg-yhA for <xen-users@lists.xenproject.org>;
 Wed,  8 Sep 2021 21:13:18 +0200 (CEST)
Received: from iris.localnet (iris.adm.antarean.org [10.55.16.47])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by mailstore1.adm.antarean.org (Postfix) with ESMTPSA id 4H4Wxp5jM1z29
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 21:13:18 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: d41fa6de-10d8-11ec-b182-12813bfff9fa
X-Virus-Scanned: amavisd-new at antarean.org
X-Virus-Scanned: amavisd-new at antarean.org
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=antarean.org;
	s=default; t=1631128398;
	bh=tEW2KhmBU/akeMKsCg+mGkFzl/CiJg4/8GP/UdJFJ5g=;
	h=From:To:Subject:Date:In-Reply-To:References;
	b=e1wjOMm3+mAQdVUxHgly3hLnEA6KAZZXXlJeZOG75UaI3talX969MUjpg2iCt2HVL
	 o5vAj7fP7w9sJcHlZZ93+tpZM+DmV1O5E4x8SvueO1KMvadryGAP3/J+FCqii0b4tA
	 +7/pnBngDjanQ6r3yJD75CnBGBhPLRKzNnkIhTlc=
From: "J. Roeleveld" <joost@antarean.org>
To: xen-users@lists.xenproject.org
Subject: Re: AW: Update DomU - Debian 11 - no loader found - Invalid kernel
Date: Wed, 08 Sep 2021 21:13:18 +0200
Message-ID: <2612606.mvXUDI8C0e@iris>
In-Reply-To: <8ea1a8ff5def479bbfff58947caaa5a6@licoho.de>
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de> <4349187.LvFx2qVVIh@iris> <8ea1a8ff5def479bbfff58947caaa5a6@licoho.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

On Wednesday, September 8, 2021 5:47:06 PM CEST Ronny Wagner wrote:
> Hi,
> 
> i use the /boot/grub/menu.lst:
> 
> default         0
> timeout         2
> title           Debian GNU/Linux 10
> root            (hd0,0)
> kernel          /vmlinuz root=/dev/xvda2 ro elevator=noop
> initrd          /initrd.img
> 
> title           Debian GNU/Linux
> root            (hd0,0)
> kernel          /boot/vmlinuz-4.19.0-17-686-pae root=/dev/xvda2 ro
> elevator=noop initrd          /boot/initrd.img-4.19.0-17-686-pae
> 
> $ ls -l /
> lrwxrwxrwx   1 root root        28 Sep  8 14:41 initrd.img ->
> boot/initrd.img-5.10.0-8-686-pae lrwxrwxrwx   1 root root        25 Sep  8
> 14:41 vmlinuz -> boot/vmlinuz-5.10.0-8-686-pae
> 
> I don't understand "no loader found", i can change to 4.19.0-17 and the DomU
> started, but not with the 5.10.0-8.
> 
> Thanks for helping.

Can you test with pointing directly at the kernel and initrd image?
Not the symbolic links?
That could also be the problem.

Do be aware, I don't think pygrub is still being developed and has several 
limitations.

--
Joost




From xen-users-bounces@lists.xenproject.org Wed Sep 08 19:28:52 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 08 Sep 2021 19:28:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182358.329876 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO3FL-0008EN-AM; Wed, 08 Sep 2021 19:28:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182358.329876; Wed, 08 Sep 2021 19:28:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO3FL-0008EF-70; Wed, 08 Sep 2021 19:28:35 +0000
Received: by outflank-mailman (input) for mailman id 182358;
 Wed, 08 Sep 2021 19:28:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=TgZD=N6=thinkmo.de=bblank@srs-us1.protection.inumbo.net>)
 id 1mO3FK-0008E9-Ct
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 19:28:34 +0000
Received: from s1-smtprelay.thinkmo.de (unknown [213.239.209.163])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 98f552d4-0197-48b3-97d6-f7902d23f933;
 Wed, 08 Sep 2021 19:28:31 +0000 (UTC)
Received: from shell.thinkmo.de (shell.thinkmo.de
 [IPv6:2a01:4f8:a1:6e:0:22:0:1])
 by s1-smtprelay.thinkmo.de (Postfix) with ESMTPS id 4H4XHL0fB0z1kf
 for <xen-users@lists.xenproject.org>; Wed,  8 Sep 2021 19:28:30 +0000 (UTC)
Received: by shell.thinkmo.de (Postfix, from userid 1000)
 id 4H4XHK3p9qz13; Wed,  8 Sep 2021 21:28:29 +0200 (CEST)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 98f552d4-0197-48b3-97d6-f7902d23f933
Date: Wed, 8 Sep 2021 21:28:29 +0200
From: Bastian Blank <bblank@thinkmo.de>
To: xen-users@lists.xenproject.org
Subject: Re: Update DomU - Debian 11 - no loader found - Invalid kernel
Message-ID: <20210908192829.GA9007@shell.thinkmo.de>
Mail-Followup-To: Bastian Blank <bblank@thinkmo.de>,
	xen-users@lists.xenproject.org
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
User-Agent: Mutt/1.10.1 (2018-07-13)

On Wed, Sep 08, 2021 at 02:04:08PM +0000, Ronny Wagner wrote:
> i use a Debian 10 Host (Dom0) with Xen 4.14.2.
> I update a Debian (i386) DomU from buster to bullseye with the new kernel 5.10.0-8-686-pae.

There is no i386 PV support anymore:

| commit a13f2ef168cb2a033a284eb841bcc481ffbc90cf
| Author: Juergen Gross <jgross@suse.com>
| Date:   Mon Jun 29 10:35:39 2020 +0200
| 
|     x86/xen: remove 32-bit Xen PV guest support
|     
|     Xen is requiring 64-bit machines today and since Xen 4.14 it can be
|     built without 32-bit PV guest support. There is no need to carry the
|     burden of 32-bit PV guest support in the kernel any longer, as new
|     guests can be either HVM or PVH, or they can use a 64 bit kernel.
|     
|     Remove the 32-bit Xen PV support from the kernel.

Bastian

-- 
Witch!  Witch!  They'll burn ya!
		-- Hag, "Tomorrow is Yesterday", stardate unknown


From xen-users-bounces@lists.xenproject.org Thu Sep 09 00:11:52 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 09 Sep 2021 00:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182512.330110 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO7eq-0004bn-AX; Thu, 09 Sep 2021 00:11:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182512.330110; Thu, 09 Sep 2021 00:11:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mO7eq-0004bf-71; Thu, 09 Sep 2021 00:11:12 +0000
Received: by outflank-mailman (input) for mailman id 182512;
 Thu, 09 Sep 2021 00:11:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=++yA=N7=strugglers.net=andy@srs-us1.protection.inumbo.net>)
 id 1mO7eo-0004bZ-K5
 for xen-users@lists.xenproject.org; Thu, 09 Sep 2021 00:11:10 +0000
Received: from mail.bitfolk.com (unknown [2001:ba8:1f1:f019::25])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d931a962-15ad-4946-a3ee-dba6d4678712;
 Thu, 09 Sep 2021 00:11:08 +0000 (UTC)
Received: from andy by mail.bitfolk.com with local (Exim 4.89)
 (envelope-from <andy@strugglers.net>) id 1mO7el-00011L-Mj
 for xen-users@lists.xenproject.org; Thu, 09 Sep 2021 00:11:07 +0000
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: d931a962-15ad-4946-a3ee-dba6d4678712
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bitfolk.com
	; s=alpha; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:
	Subject:To:From:Date:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:
	Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc
	:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe:
	List-Post:List-Owner:List-Archive;
	bh=Ag6HmgEhnqJ92BUms2/AdQ7aDu2Afbxx0VewHbkHug0=; b=3N6Hg2E+CrCadOVgUimUQ6R2dI
	3hX3bjGSlbarahjmuSHl+9++KtvqK1I+J9wC6vu0pUMw8ZDZrWSaGjZnMvwiratjOnBzzCiyVZgt7
	ripb4n6QVcDQvZpAEcmFByKB1W1l3qLHICIk6m/VXQ9VloQHuoUb6J8m5DXQULMxaMARydhzsXqBU
	g4JcnGSo6dHcrIU2gt+pfnGxv6iarpBKUNA4xXkS3srZjTgW6YRkwr+zRKoRMd4SYW0KQ8lPpWa5G
	Wrjfxha8O7Fg1p+/PJCHkHSLNULKkI29JAp7dcOMAnxxbBf976t48NIsPLzsrmVWprUljvIOg2V0Y
	nR0eg3Dw==;
Date: Thu, 9 Sep 2021 00:11:07 +0000
From: Andy Smith <andy@strugglers.net>
To: xen-users@lists.xenproject.org
Subject: Re: Update DomU - Debian 11 - no loader found - Invalid kernel
Message-ID: <20210909001107.snrkq3mspzoybkcu@bitfolk.com>
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
OpenPGP: id=BF15490B; url=http://strugglers.net/~andy/pubkey.asc
X-URL: http://strugglers.net/wiki/User:Andy
User-Agent: NeoMutt/20170113 (1.7.2)
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: andy@strugglers.net
X-SA-Exim-Scanned: No (on mail.bitfolk.com); SAEximRunCond expanded to false

Hi Ronny,

On Wed, Sep 08, 2021 at 02:04:08PM +0000, Ronny Wagner wrote:
> I update a Debian (i386) DomU from buster to bullseye with the new kernel 5.10.0-8-686-pae.
> 
> When i reboot the DomU, there is a fail message and the DomU don't start:
> xc: error: panic: xc_dom_core.c:693: xc_dom_find_loader: no loader found: Invalid kernel

As Bastian pointed out, upstream Linux kernel at 5.10 does not
support 32-bit Xen PV guests any more.

I think your least invasive option is to use multiarch and install an
amd64 kernel. You can do that while booted into the working 4.19
kernel.

Follow these instructions only as far as installing and booting the
new amd64 kernel:

    https://wiki.debian.org/CrossGrading

You'll then continue with a 64-bit kernel and 32-bit userland. Your
Debian guest will continue to properly upgrade to later versions of
the amd64 kernel.

Optionally you can also crossgrade entire userland to 64-bit but
this is a major undertaking fraught with difficulty and likely a
reinstall is quicker and safer. Changing only the kernel is
minimally invasive.

The above is a quick fix that gets you working again; longer term
you need to stop using 32-bit guests. I think from hypervisor
version 4.15 they are also unsupported in PV mode, can only work in
PVH or HVM mode (or PV-Shim, which is PV in PVH).

Also do note that since XSA-370 there is no security support in Xen
for 32-bit PV guests:

    https://xenbits.xen.org/xsa/advisory-370.html
    https://github.com/xen-project/xen/blob/master/SUPPORT.md#x86pv

I would also strongly suggest that you move off of pygrub and on to
pvhgrub, though I think you will need to build your own pvhgrub
image from upstream grub sources for this.

At the moment with pygrub you are having your dom0 open the guest
filesystem and search about for a menu.lst file, then parse it and
extract the kernel and initramfs files from the guest. This is
fragile as it relies on pygrub keeping compatibility with actual
grub configuration syntax. It's also a bit of a security worry to be
opening and parsing guest filesystems in dom0 context.

By contrast, pvhgrub is a copy of upstream grub that is booted as
the guest's kernel, so it runs in the guest context and behaves as
grub normally would.

Here are instructions for building a pvhgrub image:

    https://wiki.xenproject.org/wiki/Xen_4.12_RC_test_instructions#PVH_domU_boot_via_grub2

You then use the resulting image as guest kernel and add "type=pvh"
to guest xl config file.

Good luck!

Cheers,
Andy


From xen-users-bounces@lists.xenproject.org Thu Sep 09 07:51:54 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 09 Sep 2021 07:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.182710.330447 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mOEpv-0002RU-5T; Thu, 09 Sep 2021 07:51:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 182710.330447; Thu, 09 Sep 2021 07:51:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mOEpv-0002RM-22; Thu, 09 Sep 2021 07:51:07 +0000
Received: by outflank-mailman (input) for mailman id 182710;
 Thu, 09 Sep 2021 07:51:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=whv8=N7=cg.tuwien.ac.at=adi@srs-us1.protection.inumbo.net>)
 id 1mOEpt-0002LK-G1
 for xen-users@lists.xenproject.org; Thu, 09 Sep 2021 07:51:05 +0000
Received: from iris.vrvis.at (unknown [92.60.8.8])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fbc59399-9926-498e-8b09-14be59ce3a66;
 Thu, 09 Sep 2021 07:51:00 +0000 (UTC)
Received: from lotta.org.vrvis.lan ([10.42.2.101] helo=lotta.localnet)
 by iris.vrvis.at with esmtpsa (TLS1.2:DHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <adi@cg.tuwien.ac.at>)
 id 1mOEpm-0002L9-K0; Thu, 09 Sep 2021 09:50:59 +0200
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: fbc59399-9926-498e-8b09-14be59ce3a66
From: Adi Kriegisch <adi@cg.tuwien.ac.at>
To: xen-users@lists.xenproject.org
Cc: "J. Roeleveld" <joost@antarean.org>
Date: Thu, 09 Sep 2021 09:50:58 +0200
Message-ID: <1664718.Jz8sTCR1dE@lotta>
In-Reply-To: <5754475.lOV4Wx5bFT@iris>
References: <1686978.o9Jjsn7BNP@lotta> <5754475.lOV4Wx5bFT@iris>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="nextPart1923240.ZExcNOSxc2"
Content-Transfer-Encoding: 7Bit
X-Spam-Level: 
X-Spam-Status: No, score=-5.5 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Report: 
	* -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP
	* -4.5 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
Subject: Re: pci passthrough on pv domain

This is a multi-part message in MIME format.

--nextPart1923240.ZExcNOSxc2
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

Dear Joost,

[...]
> > Can anyone help me fix pci passthrough?
> 
> Not sure if I can, as I do get " (XEN) I/O virtualisation enabled ", but I can 
> try.
> 
> From what I read, you need I/O virtualisation enabled (or PV-enabled?) to get 
> this to work. If it worked before, can you check the full "xl dmesg" to see if 
> there is anything else that might indicate why it works in previous versions?
The strange thing about it is that the 'xl dmesg' outputs do look nearly
identical; there are no errors whatsoever. I am absolutely clueless. Did
something change with regard to pv domains and pcie pass through?

-- Adi

--nextPart1923240.ZExcNOSxc2
Content-Disposition: attachment; filename="Xen_4.11-xl-dmesg.log"
Content-Transfer-Encoding: 7Bit
Content-Type: text/x-log; charset="UTF-8"; name="Xen_4.11-xl-dmesg.log"

(XEN) Xen version 4.11.4 (Debian 4.11.4+107-gef32c7afa2-1) (pkg-xen-devel@lists.alioth.debian.org) (gcc (Debian 8.3.0-6) 8.3.0) debug=n  Mon Jun 14 14:46:59 UTC 2021
(XEN) Bootloader: GRUB 2.04-20
(XEN) Command line: placeholder com1=115200,8n1,0x3e8,5 console=com1,vga dom0_mem=2048M,max:2048M dom0_max_vcpus=2 dom0_vcpus_pin gnttab_max_frames=64 xpti=dom0=false,domu=true ucode=scan
(XEN) Xen image load base address: 0x7de00000
(XEN) Video information:
(XEN)  VGA is text mode 80x25, font 8x16
(XEN)  VBE/DDC methods: V2; EDID transfer time: 1 seconds
(XEN) Disc information:
(XEN)  Found 6 MBR signatures
(XEN)  Found 6 EDD information structures
(XEN) Xen-e820 RAM map:
(XEN)  0000000000000000 - 000000000009ac00 (usable)
(XEN)  000000000009ac00 - 00000000000a0000 (reserved)
(XEN)  00000000000e0000 - 0000000000100000 (reserved)
(XEN)  0000000000100000 - 0000000070165000 (usable)
(XEN)  0000000070179000 - 000000007f0bf000 (usable)
(XEN)  000000007f0bf000 - 000000007f134000 (reserved)
(XEN)  000000007f134000 - 000000007f1df000 (usable)
(XEN)  000000007f1df000 - 000000007f44e000 (ACPI NVS)
(XEN)  000000007f44e000 - 000000007f64b000 (reserved)
(XEN)  000000007f64b000 - 000000007f800000 (usable)
(XEN)  00000000e0000000 - 00000000e4000000 (reserved)
(XEN)  00000000fed01000 - 00000000fed04000 (reserved)
(XEN)  00000000fed08000 - 00000000fed09000 (reserved)
(XEN)  00000000fed0c000 - 00000000fed10000 (reserved)
(XEN)  00000000fed1c000 - 00000000fed1d000 (reserved)
(XEN)  00000000fef00000 - 0000000100000000 (reserved)
(XEN)  0000000100000000 - 0000000280000000 (usable)
(XEN) ACPI: RSDP 000F04A0, 0024 (r2 ALASKA)
(XEN) ACPI: XSDT 7F234088, 0094 (r1 ALASKA   A M I   1072009 AMI     10013)
(XEN) ACPI: FACP 7F237710, 010C (r5 ALASKA   A M I   1072009 AMI     10013)
(XEN) ACPI: DSDT 7F2341B8, 3552 (r2 ALASKA   A M I   1072009 INTL 20120913)
(XEN) ACPI: FACS 7F44BF80, 0040
(XEN) ACPI: FPDT 7F237820, 0044 (r1 ALASKA   A M I   1072009 AMI     10013)
(XEN) ACPI: SPMI 7F237868, 0040 (r5 A M I   OEMSPMI        0 AMI.        0)
(XEN) ACPI: MCFG 7F2378A8, 003C (r1 ALASKA    A M I  1072009 MSFT       97)
(XEN) ACPI: WDAT 7F2378E8, 01AC (r1 ALASKA    A M I  1072009 MSFT    10013)
(XEN) ACPI: UEFI 7F237A98, 0042 (r1                        0             0)
(XEN) ACPI: APIC 7F237AE0, 0078 (r3 INTEL  TIANO           1 MSFT        0)
(XEN) ACPI: BDAT 7F237B58, 0030 (r1                        0             0)
(XEN) ACPI: HPET 7F237B88, 0038 (r1 INTEL                  1 MSFT  1000013)
(XEN) ACPI: SSDT 7F237BC0, 09F1 (r1  PmRef    CpuPm     3000 INTL 20120913)
(XEN) ACPI: HEST 7F2385B8, 00A8 (r1 INTEL  AVOTON B        1 INTL        1)
(XEN) ACPI: BERT 7F238660, 0030 (r1 INTEL  AVOTON B        1 INTL        1)
(XEN) ACPI: ERST 7F238690, 0230 (r1 INTEL  AVOTON B        1 INTL        1)
(XEN) ACPI: EINJ 7F2388C0, 0150 (r1 INTEL  AVOTON B        1 INTL        1)
(XEN) System RAM: 8178MB (8374932kB)
(XEN) Domain heap initialised
(XEN) ACPI: 32/64X FACS address mismatch in FADT - 7f44bf80/0000000000000000, using 32
(XEN) IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
(XEN) Enabling APIC mode:  Flat.  Using 1 I/O APICs
(XEN) microcode: CPU0 updated from revision 0x12a to 0x12d, date = 2019-09-16
(XEN) Speculative mitigation facilities:
(XEN)   Hardware features: IBRS/IBPB STIBP MD_CLEAR
(XEN)   Compiled-in support: INDIRECT_THUNK SHADOW_PAGING
(XEN)   Xen settings: BTI-Thunk RETPOLINE, SPEC_CTRL: IBRS-, Other: IBPB VERW
(XEN)   Support for VMs: PV: MSR_SPEC_CTRL RSB MD_CLEAR, HVM: MSR_SPEC_CTRL RSB MD_CLEAR
(XEN)   XPTI (64-bit PV only): Dom0 disabled, DomU enabled
(XEN)   PV L1TF shadowing: Dom0 disabled, DomU disabled
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Platform timer is 14.318MHz HPET
(XEN) Detected 2400.036 MHz processor.
(XEN) Initing memory sharing.
(XEN) I/O virtualisation disabled
(XEN) ENABLING IO-APIC IRQs
(XEN)  -> Using new ACK method
(XEN) Allocated console ring of 16 KiB.
(XEN) VMX: Supported advanced features:
(XEN)  - APIC MMIO access virtualisation
(XEN)  - APIC TPR shadow
(XEN)  - Extended Page Tables (EPT)
(XEN)  - Virtual-Processor Identifiers (VPID)
(XEN)  - Virtual NMI
(XEN)  - MSR direct-access bitmap
(XEN)  - Unrestricted Guest
(XEN)  - VM Functions
(XEN) HVM: ASIDs enabled.
(XEN) HVM: VMX enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB
(XEN) microcode: CPU2 updated from revision 0x12a to 0x12d, date = 2019-09-16
(XEN) Brought up 4 CPUs
(XEN) Dom0 has maximum 408 PIRQs
(XEN)  Xen  kernel: 64-bit, lsb, compat32
(XEN)  Dom0 kernel: 64-bit, PAE, lsb, paddr 0x1000000 -> 0x322c000
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN)  Dom0 alloc.:   0000000270000000->0000000274000000 (498998 pages to be allocated)
(XEN)  Init. ramdisk: 000000027dd36000->000000027ffff03a
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN)  Loaded kernel: ffffffff81000000->ffffffff8322c000
(XEN)  Init. ramdisk: 0000000000000000->0000000000000000
(XEN)  Phys-Mach map: 0000008000000000->0000008000400000
(XEN)  Start info:    ffffffff8322c000->ffffffff8322c4b8
(XEN)  Xenstore ring: 0000000000000000->0000000000000000
(XEN)  Console ring:  0000000000000000->0000000000000000
(XEN)  Page tables:   ffffffff8322d000->ffffffff8324a000
(XEN)  Boot stack:    ffffffff8324a000->ffffffff8324b000
(XEN)  TOTAL:         ffffffff80000000->ffffffff83400000
(XEN)  ENTRY ADDRESS: ffffffff82c30160
(XEN) Dom0 has maximum 2 VCPUs
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Scrubbing Free RAM on 1 nodes using 4 CPUs
(XEN) ....................done.
(XEN) Std. Loglevel: Errors and warnings
(XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings)
(XEN) Xen is relinquishing VGA console.
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input to Xen)
(XEN) Freed 476kB init memory

--nextPart1923240.ZExcNOSxc2--





From xen-users-bounces@lists.xenproject.org Thu Sep 09 18:36:14 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 09 Sep 2021 18:36:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.181756.331670 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mOOtR-0006P2-Hp; Thu, 09 Sep 2021 18:35:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 181756.331670; Thu, 09 Sep 2021 18:35:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mOOtR-0006Ov-Dt; Thu, 09 Sep 2021 18:35:25 +0000
Received: by outflank-mailman (input) for mailman id 181756;
 Wed, 08 Sep 2021 10:44:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6l89=N6=gmail.com=ysaikiran1997@srs-us1.protection.inumbo.net>)
 id 1mNv3n-0007pJ-Nr
 for xen-users@lists.xenproject.org; Wed, 08 Sep 2021 10:44:07 +0000
Received: from mail-pj1-x1034.google.com (unknown [2607:f8b0:4864:20::1034])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8e63b040-69bf-46ba-9424-d39d84029907;
 Wed, 08 Sep 2021 10:44:06 +0000 (UTC)
Received: by mail-pj1-x1034.google.com with SMTP id t20so1314363pju.5
 for <xen-users@lists.xenproject.org>; Wed, 08 Sep 2021 03:44:06 -0700 (PDT)
Received: from Sai-Kiran-Y ([106.51.80.86])
 by smtp.gmail.com with ESMTPSA id 22sm2464490pgn.88.2021.09.08.03.44.03
 for <xen-users@lists.xenproject.org>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 08 Sep 2021 03:44:05 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 8e63b040-69bf-46ba-9424-d39d84029907
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20210112;
        h=mime-version:date:from:subject:thread-topic:message-id:to;
        bh=EH4GYJ0m0J8bJjZPj4pZtUTIzd7d5mTiFg/6VQScLQo=;
        b=VSeuzfYG9b2cJI6m+GpAUiSfpYOIHu5VxJ0d31XV9IfTMV6pJReIE3uHinMt8HdmiA
         INRZ2caknQo8eRl+dyklPtCPTLCwLzItNsskZ8QEYbB8kHbuT/NJjkIg9BNWVEiNZ2+P
         tpSE9IwEPjEItLZ2Jpw2osZdWNo8pfD41001r5QqVefPQBohd9/m2rMfxEav3UY60yw4
         DCmMdVHrTik0272GvQfPFZnJhTWhIDnQb4hj4Vk56OCHRSJhMJw2OvwD5U2xBqewKhhR
         XVomHPk+PrEqMx9Mn/kqMqLgdvmmwwf0aZ5D0vOfneLV+Ggxo5bcgwRFce2xZ3nQ8RlS
         zA2Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:date:from:subject:thread-topic
         :message-id:to;
        bh=EH4GYJ0m0J8bJjZPj4pZtUTIzd7d5mTiFg/6VQScLQo=;
        b=giKVk+O+e024jv1Khg10uD+8UqkAJdHFfXXSZKvqRTHVNf2gK8bEAelU+c5klbJJpr
         igAbUPSIpfZAz+BfPj1CSVXVq7EI0MMYw72Iy2CXNNaSVemYRTvzZiePZ6ivBrjoWiX+
         7U1ZZd4SOoZhG6yTtF8TdGjA3EDyDKDnv81QTcYJnzkfQ1bIGh8cMuxUftRHM0jHVx1h
         SODQ0j+yM0SSsabTOwpa6k6DbzyRA7ZrLg+BuyARwv8CZjTMvQtET703imUeEjLUdGOq
         nnn0udaV84Srsj9epYxYlCUDPrI+M2eWWpzLCgz5IvhHI1uPnVebCO5oDvkRyJH+xmhJ
         IHUA==
X-Gm-Message-State: AOAM533poNmB2WWPnibfs3lq/IfxeSjGqXXsycZ0HJm3nuvCKVIx+h2T
	bQfkmlKrYXWduZT+6FiLi/ujhX1CfmU=
X-Google-Smtp-Source: ABdhPJxYKr6DExJdFmkR20vabj+vCp76FyuYdNiO0GfRjGZIMw+S03BNOo8kz8kAIoTeeFKSGfeJPA==
X-Received: by 2002:a17:90b:1b46:: with SMTP id nv6mr3455909pjb.228.1631097845578;
        Wed, 08 Sep 2021 03:44:05 -0700 (PDT)
MIME-Version: 1.0
Date: Wed, 8 Sep 2021 16:13:59 +0530
From: Sai Kiran <ysaikiran1997@gmail.com>
Subject: Xen Booting Problem on ARM Machine
Thread-Topic: Xen Booting Problem on ARM Machine
Message-ID: <33C29853-D896-4E4E-91D3-4D2FA89A9B91@hxcore.ol>
To: "xen-users@lists.xenproject.org" <xen-users@lists.xenproject.org>
Content-Type: multipart/related;
	boundary="_ADFC44A8-5515-468B-BF87-C33D0D4666BA_"

--_ADFC44A8-5515-468B-BF87-C33D0D4666BA_
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset="utf-8"

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40"><head><meta http-equiv=3DContent-Type content=
=3D"text/html; charset=3Dutf-8"><meta name=3DGenerator content=3D"Microsoft=
 Word 15 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#defaul=
t#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
.MsoChpDefault
	{mso-style-type:export-only;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style></head><body lang=3DEN-IN link=3Dblue vlink=3D"#954F72" style=3D=
'word-wrap:break-word'><div class=3DWordSection1><p class=3DMsoNormal><span=
 lang=3DEN-US>Hello,<o:p></o:p></span></p><p class=3DMsoNormal><span lang=
=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-U=
S>I have Xen-4.15.0 on an ARM Machine, with Debian 11 installed on it. I am=
 able to do =E2=80=9Cmake world=E2=80=9D and =E2=80=9Cmake install=E2=80=9D=
, after =E2=80=9C./configure=E2=80=9D, as specified in README file. When I =
reboot the system, I get the following message:<o:p></o:p></span></p><p cla=
ss=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMs=
oNormal><span lang=3DEN-US>Warning: All 128 bootinfo mem banks exhausted. <=
o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Warning: All 1=
28 bootinfo mem banks exhausted. <o:p></o:p></span></p><p class=3DMsoNormal=
><span lang=3DEN-US>Cannot exit boot services: ErrCode: 0x8000000000000002 =
<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</=
o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Here is the snapshot=
 of the error.<o:p></o:p></span></p><p class=3DMsoNormal><img width=3D515 h=
eight=3D386 style=3D'width:5.3666in;height:4.025in' id=3D"Picture_x0020_3" =
src=3D"cid:image003.jpg@01D7A4CC.882EC890"></p><p class=3DMsoNormal><o:p>&n=
bsp;</o:p></p><p class=3DMsoNormal>Can someone tell me how to fix this erro=
r?</p><p class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Thanks=
 &amp; Regards,</p><p class=3DMsoNormal>Sai Kiran.</p><p class=3DMsoNormal>=
<o:p>&nbsp;</o:p></p><p class=3DMsoNormal>Sent from <a href=3D"https://go.m=
icrosoft.com/fwlink/?LinkId=3D550986">Mail</a> for Windows</p><p class=3DMs=
oNormal><o:p>&nbsp;</o:p></p></div></body></html>=

--_ADFC44A8-5515-468B-BF87-C33D0D4666BA_
Content-Type: image/jpeg; name="A94D0EFE3EE1436FADAF1DEB2EB4F07A.jpg"
Content-ID: <image003.jpg@01D7A4CC.882EC890>
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="A94D0EFE3EE1436FADAF1DEB2EB4F07A.jpg"

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsK
CwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQU
FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAHjAoQDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDBj8Ta
iGD/AGuPI55WrS+OtQMh2y20rEZJ2+lcVCsisQsqnIzywqqIrrcSrkg9eeK8lyd9AO6/4T7VPOBC
27beT6fQ1PJ47vFuEb7PbsvUxqT+Wa4GOKaMjDFTjPrmniS7U5IZ9/8AskZrNyK1O8f4gXQwzWce
FOSd2Mj0oHxEcplrHK54/efpXCNNc7F3gfL/AAsgz/8AXqLzJJOgAHr0pczKSsejN8RrWNTusZOg
xhhwfWnWvxItVYF7eZkI56GvOyzMhbJwvBqIXBJCqpx068U433JbuenN8RNJ8x2Vph6Zjx+gNSJ4
+02SMK8kgPXJU15cylWLAkURbpM5I+hrTW5Vj1S38a6bJIFa92+7Zq1Z+MNO8wsl4iMD3HX9K8hm
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
ceBRRUXZI3JpD1FFFS27mkdiOiiiuGUnfco//9k=

--_ADFC44A8-5515-468B-BF87-C33D0D4666BA_--



From xen-users-bounces@lists.xenproject.org Fri Sep 10 08:31:38 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 10 Sep 2021 08:31:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.184160.332731 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mObvy-0006TZ-B6; Fri, 10 Sep 2021 08:30:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 184160.332731; Fri, 10 Sep 2021 08:30:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mObvy-0006TO-7B; Fri, 10 Sep 2021 08:30:54 +0000
Received: by outflank-mailman (input) for mailman id 184160;
 Fri, 10 Sep 2021 08:30:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/qas=OA=licoho.de=r.wagner@srs-us1.protection.inumbo.net>)
 id 1mObvw-0006TI-E0
 for xen-users@lists.xenproject.org; Fri, 10 Sep 2021 08:30:53 +0000
Received: from licoho.de (unknown [2a02:c207:3001:4250::10])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5f6b0f40-464d-4f6d-865a-0706647137f2;
 Fri, 10 Sep 2021 08:30:48 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by as02.licoho.de (Postfix) with ESMTP id 97A40CF4169
 for <xen-users@lists.xenproject.org>; Fri, 10 Sep 2021 10:30:46 +0200 (CEST)
Received: from as02.licoho.de ([127.0.0.1])
 by localhost (as02.licoho.de [127.0.0.1]) (maiad, port 10026) with LMTP
 id 30414-07 for <xen-users@lists.xenproject.org>;
 Fri, 10 Sep 2021 10:30:45 +0200 (CEST)
Received: from licoho.de (localhost [127.0.0.1])
 by as02.licoho.de (Postfix) with ESMTP id 848D0CF506A
 for <xen-users@lists.xenproject.org>; Fri, 10 Sep 2021 10:30:45 +0200 (CEST)
Received: from saruman.licoho.internal (saruman.licoho.de [178.63.70.104])
 (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by as02.licoho.de (Postfix) with ESMTPSA id 0CA95CF4169
 for <xen-users@lists.xenproject.org>; Fri, 10 Sep 2021 10:30:44 +0200 (CEST)
Received: from saruman.licoho.internal (2a01:4f8:121:210a:178:63:131:114) by
 saruman.licoho.internal (2a01:4f8:121:210a:178:63:131:114) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2308.14; Fri, 10 Sep 2021 10:30:42 +0200
Received: from saruman.licoho.internal ([178.63.70.104]) by
 saruman.licoho.internal ([178.63.70.104]) with mapi id 15.01.2308.014; Fri,
 10 Sep 2021 10:30:42 +0200
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 5f6b0f40-464d-4f6d-865a-0706647137f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=licoho.de; h=from:to
	:subject:date:message-id:references:in-reply-to:mime-version
	:content-type; s=dkim; bh=Wr5NFSdDda4TsGfFklvTqN04aP3PdbqeBmycd+
	K+R/g=; b=C315hWInOgOezRi95Rxch+zQPIOnYdlev5mQwGuxaA/GcVdGE/LPFr
	TCzH66gNYRtMnRS8cQj6WyZpQp6fNezdrQ2rKkzBx57JCrfetGuWXsZTcDAq4Nk1
	F2PZV/hxgdrFIa4GL8ogHUxmglix7MzCztAZHRHuf1i+PKX+fUojsLImseEC0VH2
	Yj2D4wj6OMwcjqQjRp71Nz8OLnAfryOddR0tC748b4qbC3vp62TfN+BHdehDHj+f
	dBeMHc3NH93eo1rbW483C3I3Fk/0TWHUB7MIX/Gm0BAbNQB8KRb1ig6BXNVLGHye
	OYJQpTzH8SrKvykQjevUgZvTRiFzVpsg==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=licoho.de; h=from:to:subject
	:date:message-id:references:in-reply-to:mime-version
	:content-type; q=dns; s=dkim; b=Og5k3ZMizANc4Zl3gP22Rlr+mn8l5pAk
	v7H2uRev5Ljag6Gxfoudjx64QpP60b5N81GqSF4APinFw6JYoPT/bfKeaXPdX38d
	DEeeoPeDzZPHy+VwtWG0FTGnV17MdXgarGWoylUHtt3Kxm7cllyu3VUIsR4B4V+8
	cRb6qk6aTUgSETfBebTVQdjyGJCLMum6Ag/IaDuBLnik5F2XHTMjZkpFZ3zV8wVZ
	kY/h0wXhFplFJ7zto+UUFRHTF5bDFWBnPbkMUrtEy1GQ5QPfhJRpnKoWrzXtAhXt
	Go5hQC/fvXf7zr0Tahza7SmFFBITi5XwGrRu0yvt1/uJqcsk7FdeTQ==
From: Ronny Wagner <r.wagner@licoho.de>
To: "xen-users@lists.xenproject.org" <xen-users@lists.xenproject.org>
Subject: AW: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Topic: Update DomU - Debian 11 - no loader found - Invalid kernel
Thread-Index: Adekt5lqbqjIFRkOSWeGjbByMf90lgARtKCAAEflHoA=
Date: Fri, 10 Sep 2021 08:30:42 +0000
Message-ID: <32aceeb02b1640f785886c364183005e@licoho.de>
References: <4189b435ba5c470f8a32369c58d58dc8@licoho.de>
 <20210909001107.snrkq3mspzoybkcu@bitfolk.com>
In-Reply-To: <20210909001107.snrkq3mspzoybkcu@bitfolk.com>
Accept-Language: de-DE, en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [62.245.250.29]
MIME-Version: 1.0
Content-Type: multipart/signed;
 protocol="application/pkcs7-signature";
 micalg="sha-256";
 boundary="----A7DD5793799B872D66255DB6BB3F0BEC"
X-Virus-Scanned: TEST OUT VIRUS AND SPAM CHECK

This is an S/MIME signed message

------A7DD5793799B872D66255DB6BB3F0BEC
Content-Language: de-DE
Content-Type: text/plain;
 charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

Thank you very very much!!! Thats it, the crossgrade!!!

Greetinx
Ronny

-----Urspr=FCngliche Nachricht-----
Von: Xen-users <xen-users-bounces@lists.xenproject.org> Im Auftrag von Andy=
 Smith
Gesendet: Donnerstag, 9. September 2021 02:11
An: xen-users@lists.xenproject.org
Betreff: Re: Update DomU - Debian 11 - no loader found - Invalid kernel

Hi Ronny,

On Wed, Sep 08, 2021 at 02:04:08PM +0000, Ronny Wagner wrote:
> I update a Debian (i386) DomU from buster to bullseye with the new kernel=
 5.10.0-8-686-pae.
>=20
> When i reboot the DomU, there is a fail message and the DomU don't start:
> xc: error: panic: xc_dom_core.c:693: xc_dom_find_loader: no loader found:=
 Invalid kernel

As Bastian pointed out, upstream Linux kernel at 5.10 does not
support 32-bit Xen PV guests any more.

I think your least invasive option is to use multiarch and install an
amd64 kernel. You can do that while booted into the working 4.19
kernel.

Follow these instructions only as far as installing and booting the
new amd64 kernel:

    https://wiki.debian.org/CrossGrading

You'll then continue with a 64-bit kernel and 32-bit userland. Your
Debian guest will continue to properly upgrade to later versions of
the amd64 kernel.

Optionally you can also crossgrade entire userland to 64-bit but
this is a major undertaking fraught with difficulty and likely a
reinstall is quicker and safer. Changing only the kernel is
minimally invasive.

The above is a quick fix that gets you working again; longer term
you need to stop using 32-bit guests. I think from hypervisor
version 4.15 they are also unsupported in PV mode, can only work in
PVH or HVM mode (or PV-Shim, which is PV in PVH).

Also do note that since XSA-370 there is no security support in Xen
for 32-bit PV guests:

    https://xenbits.xen.org/xsa/advisory-370.html
    https://github.com/xen-project/xen/blob/master/SUPPORT.md#x86pv

I would also strongly suggest that you move off of pygrub and on to
pvhgrub, though I think you will need to build your own pvhgrub
image from upstream grub sources for this.

At the moment with pygrub you are having your dom0 open the guest
filesystem and search about for a menu.lst file, then parse it and
extract the kernel and initramfs files from the guest. This is
fragile as it relies on pygrub keeping compatibility with actual
grub configuration syntax. It's also a bit of a security worry to be
opening and parsing guest filesystems in dom0 context.

By contrast, pvhgrub is a copy of upstream grub that is booted as
the guest's kernel, so it runs in the guest context and behaves as
grub normally would.

Here are instructions for building a pvhgrub image:

    https://wiki.xenproject.org/wiki/Xen_4.12_RC_test_instructions#PVH_domU=
_boot_via_grub2

You then use the resulting image as guest kernel and add "type=3Dpvh"
to guest xl config file.

Good luck!

Cheers,
Andy


------A7DD5793799B872D66255DB6BB3F0BEC
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"

MIIHvAYJKoZIhvcNAQcCoIIHrTCCB6kCAQExDzANBglghkgBZQMEAgEFADALBgkq
hkiG9w0BBwGgggUDMIIE/zCCA+egAwIBAgIMfeSnXlhbW6X8xIPzMA0GCSqGSIb3
DQEBCwUAMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh
MTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMSBDQSAy
MDIwMB4XDTIxMDUwNjA3MTMwOFoXDTIyMTAwODA3NDkxMVowQDEbMBkGA1UEAwwS
ci53YWduZXJAbGljb2hvLmRlMSEwHwYJKoZIhvcNAQkBFhJyLndhZ25lckBsaWNv
aG8uZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDk1sPc/2P/L0TB
BM+bBGh9dVe5UQYqRCyCT9Xf+RZC+oRKAlLxQ/MWA4U27NQX70mqelxqqhMTYetH
TjERwKL6xbxfJgLjCw7lGdpubWK8iC5DoLtuDpC8VgARjJzZOZmHTJ0XjwThWCQf
vMoKvidblKGcDlXTTMo9F3ENLOAqvWapu1YUEj9Sd0y5HFpfyMK+BU7KNvZIxGxr
1arynPPBxtYKmldrZlKKHfugv8GFNP8/85mdgzRS52o/mGzfCJ1wH90hbLEFMK/6
/3M+HvfTHtz7M3xyWnnmSepZHYcpd8MW2pUuF61ccldW6YOzA0Ty6leUbUAYAOS7
roUVA5AlAgMBAAGjggHcMIIB2DAOBgNVHQ8BAf8EBAMCBaAwgaMGCCsGAQUFBwEB
BIGWMIGTME4GCCsGAQUFBzAChkJodHRwOi8vc2VjdXJlLmdsb2JhbHNpZ24uY29t
L2NhY2VydC9nc2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcnQwQQYIKwYBBQUH
MAGGNWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNp
Z24xY2EyMDIwMEwGA1UdIARFMEMwQQYJKwYBBAGgMgEoMDQwMgYIKwYBBQUHAgEW
Jmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMAkGA1UdEwQC
MAAwSQYDVR0fBEIwQDA+oDygOoY4aHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9n
c2djY3IzcGVyc29uYWxzaWduMWNhMjAyMC5jcmwwHQYDVR0RBBYwFIESci53YWdu
ZXJAbGljb2hvLmRlMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAfBgNV
HSMEGDAWgBSFu/DMxDa1CmJ2o5kuj7s6aq3FUTAdBgNVHQ4EFgQU4XIlp6phg4lv
HI6ntsvZ5DLBXPAwDQYJKoZIhvcNAQELBQADggEBAL2V12ISuNRMX22gIKdkInYb
Lvsylbq5cKOFEFonuci4X+EUR+SIoI6cV63+IOhsNMMHbT5pMDVBGeYatT58ez+l
heshgUBpnocoaagogHMK+MBj/lEPsLMna7wOMuSlJIUG/KpA3vABelfPZJxBbr+a
XXiDuZqCkvP1DG2ODsUojELCBvlXauCH86kZoGqh18FoOLQ/k3JIcp3xZwBTdTop
aojcyck7q5VnBiw56R1NElo7jsUuAdPoOojt+lSSxRC78B6s9ubn+MoSq6ge9rvF
cf9QvM5x59q01A8Pm8Pa7SjTnTHFP7lv6ZIrCkLNrd4/7LnkQCBaKNu/BtHj6yox
ggJ9MIICeQIBATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWdu
IG52LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24g
MSBDQSAyMDIwAgx95KdeWFtbpfzEg/MwDQYJYIZIAWUDBAIBBQCggeQwGAYJKoZI
hvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMjEwOTEwMDgzMDQ1
WjAvBgkqhkiG9w0BCQQxIgQgkC8Zs5r9T16tnnOdPC66GtFwAoBuhsoedsE8UDRo
404weQYJKoZIhvcNAQkPMWwwajALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsG
CWCGSAFlAwQBAjAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcN
AwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwDQYJKoZIhvcNAQEBBQAEggEA
yBcutaqDLgzn6nGdVXH6Kzi0qndS7IXcdYMNeyQxcayprx2lWZdVxC+oQ6KP7VEj
P/V2CFazeZqBhnlyVU+oxm2nQZDvtRDJnkuPPfERR1/rV2stU1lG9NP2iyAjXj0I
5DW7JXIcgkGL5NNBuBFWN0BgT5U3eUiocYdwcGls5zfVmp8DTmVVbmqyvCgOYED9
g5XU3ncU6GRAYFrljh1i96AeoYR21h1FTicP8ezVChfrusOkcK+tD5pu94kvqRV9
ONUdhPr2b9hj9ZdBYxSD5VdsgrKRJWrCAA4TfqtHiwNIlGtQM7/5qlre2O7Kx/LP
ZZN/sYsKfYmSjpVCNtXTiQ==

------A7DD5793799B872D66255DB6BB3F0BEC--



From xen-users-bounces@lists.xenproject.org Mon Sep 20 13:10:26 2021
Return-path: <xen-users-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 20 Sep 2021 13:10:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.190889.340713 (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mSJ3D-0001lx-JW; Mon, 20 Sep 2021 13:09:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 190889.340713; Mon, 20 Sep 2021 13:09:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-users-bounces@lists.xenproject.org>)
	id 1mSJ3D-0001lp-GE; Mon, 20 Sep 2021 13:09:39 +0000
Received: by outflank-mailman (input) for mailman id 190889;
 Mon, 20 Sep 2021 13:09:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cYmm=OK=koprow.ski=charles@srs-us1.protection.inumbo.net>)
 id 1mSJ3B-0001lj-3v
 for xen-users@lists.xen.org; Mon, 20 Sep 2021 13:09:37 +0000
Received: from mail-ua1-x92e.google.com (unknown [2607:f8b0:4864:20::92e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 45770a09-1c12-43d8-9aff-2f48d067917c;
 Mon, 20 Sep 2021 13:09:35 +0000 (UTC)
Received: by mail-ua1-x92e.google.com with SMTP id f24so11100051uav.8
 for <xen-users@lists.xen.org>; Mon, 20 Sep 2021 06:09:34 -0700 (PDT)
X-BeenThere: xen-users@lists.xenproject.org
List-Id: Xen user discussion <xen-users.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-users@lists.xenproject.org>
List-Help: <mailto:xen-users-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-users>,
 <mailto:xen-users-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-users-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-users" <xen-users-bounces@lists.xenproject.org>
X-Inumbo-ID: 45770a09-1c12-43d8-9aff-2f48d067917c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=koprow.ski; s=google;
        h=mime-version:from:date:message-id:subject:to;
        bh=8kZuiaHJg4n4B8cJnA/yF0pQfUWXv4md6chfoqejDb4=;
        b=ax3Hda/Xh9sVEivQthzw7ZVSFgv7WCbtbrhrKK38I2LGeJL1dos/H/QbIkgBdHP+SR
         hdRWVjVXIEAX59QP5NzyRYKv+B2FVtKDXwezZrXrPlcKcLccoTU5a0LMEPoLgol5RU1B
         kIgDECoHih1jTUB3TeMWRilJoI7WSNzTgYP0w=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20210112;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=8kZuiaHJg4n4B8cJnA/yF0pQfUWXv4md6chfoqejDb4=;
        b=yGi0huvAt24kXr1//AzLJyf60SxVaT9AnvKxerQSEXsqTOtP0Gvtou6THPLE4C0Z0d
         iH8/UWqiFJH1TWMx3csIU20AAy4uI9yF/ATpzWSq7sm1/cVHxBQ3KI+ipreeOkzc6/n2
         na23X5Nx5rOGtyegEiFZEECuMlWKfymurT6zWf5U8vGFLtasoK8AULj3fghuHObSyewP
         2lBSzpUML0a6to75X2QZQRPPlcCuKeKelNTGOatcKk2cYm3JWFya5ZMq8wa2xBMQ2X+m
         ixAT5j3/PPaMKBsmmojq6wvsevc77aCpCFQWhN8o18UZkYUA3ngO9XkFakpUKiNwC65h
         k2RA==
X-Gm-Message-State: AOAM53083lG1EVSWdoqdDIYDVRnGem84TCxKpoafmZ5+EtUk1PtpHsQp
	ZG4VPrZKOxRemLU03TfSuMK83iFPLGko32Y+f7/io53lAy63Og==
X-Google-Smtp-Source: ABdhPJyrrWS1ZSzCuFClFx9dvhQaWFfecr0hkZSRaTtlnYpXgMmAgB1Lm9OUOZb1x7ikwkEBCDEVLFxUxe/1Z4gdC6g=
X-Received: by 2002:ab0:3413:: with SMTP id z19mr11285188uap.39.1632143374073;
 Mon, 20 Sep 2021 06:09:34 -0700 (PDT)
MIME-Version: 1.0
From: Charles Koprowski <charles@koprow.ski>
Date: Mon, 20 Sep 2021 15:08:58 +0200
Message-ID: <CADBR731KMGn-tSGpryGU5e9C7U7HsQUy9G+Q_Xd5-hE6g9LH3w@mail.gmail.com>
Subject: How to set block-device timeout
To: xen-users@lists.xen.org
Content-Type: multipart/alternative; boundary="00000000000008d32305cc6cfe8a"

--00000000000008d32305cc6cfe8a
Content-Type: text/plain; charset="UTF-8"

Hello

I need to change the block-device timeout values for DomU's using vbd block
devices (eg xvda, etc...).

However, the sysfs tunable /sys/block/<local_iscsi_blockdev/device/timeout
does not exist in DomU context for the xvd-devices.

Does anyone know how to do this?

Thank you.

-- 
Charles

--00000000000008d32305cc6cfe8a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello</div><div><br></div>I need to change the block-=
device timeout values for DomU&#39;s using vbd block devices (eg xvda, etc.=
..).<div><br>However, the sysfs tunable /sys/block/&lt;local_iscsi_blockdev=
/device/timeout does not exist in DomU context for the xvd-devices.=C2=A0=
=C2=A0</div><div><br></div><div>Does anyone know how to do this?=C2=A0</div=
><div><br></div><div>Thank you.</div><div><div><br></div>-- <br><div dir=3D=
"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div dir=
=3D"ltr">Charles<br></div></div></div></div>

--00000000000008d32305cc6cfe8a--


