From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Wang Subject: [PATCH V13 0/6] mdev based hardware virtio offloading support Date: Mon, 18 Nov 2019 18:59:17 +0800 Message-ID: <20191118105923.7991-1-jasowang@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5F4AB6E435 for ; Mon, 18 Nov 2019 11:00:09 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: kvm@vger.kernel.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, kwankhede@nvidia.com, alex.williamson@redhat.com, mst@redhat.com, tiwei.bie@intel.com, gregkh@linuxfoundation.org, jgg@mellanox.com Cc: rdunlap@infradead.org, jakub.kicinski@netronome.com, christophe.de.dinechin@gmail.com, sebott@linux.ibm.com, airlied@linux.ie, Jason Wang , heiko.carstens@de.ibm.com, kevin.tian@intel.com, rob.miller@broadcom.com, hch@infradead.org, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, jeffrey.t.kirsher@intel.com, zhi.a.wang@intel.com, farman@linux.ibm.com, parav@mellanox.com, gor@linux.ibm.com, cunming.liang@intel.com, rodrigo.vivi@intel.com, xiao.w.wang@intel.com, freude@linux.ibm.com, stefanha@redhat.com, zhihong.wang@intel.com, akrowiak@linux.ibm.com, jiri@mellanox.com, netdev@vger.kernel.org, cohuck@redhat.com, oberpar@linux.ibm.com, maxime.coquelin@redhat.com, aadam@redhat.com, lingshan.zhu@intel.com List-Id: dri-devel@lists.freedesktop.org SGkgYWxsOgoKVGhlcmUgYXJlIGhhcmR3YXJlcyB0aGF0IGNhbiBkbyB2aXJ0aW8gZGF0YXBhdGgg b2ZmbG9hZGluZyB3aGlsZQpoYXZpbmcgaXRzIG93biBjb250cm9sIHBhdGguIFRoaXMgcGF0aCB0 cmllcyB0byBpbXBsZW1lbnQgYSBtZGV2IGJhc2VkCnVuaWZpZWQgQVBJIHRvIHN1cHBvcnQgdXNp bmcga2VybmVsIHZpcnRpbyBkcml2ZXIgdG8gZHJpdmUgdGhvc2UKZGV2aWNlcy4gVGhpcyBpcyBk b25lIGJ5IGludHJvZHVjaW5nIGEgbmV3IG1kZXYgdHJhbnNwb3J0IGZvciB2aXJ0aW8KKHZpcnRp b19tZGV2KSBhbmQgcmVnaXN0ZXIgaXRzZWxmIGFzIGEgbmV3IGtpbmQgb2YgbWRldiBkcml2ZXIu IFRoZW4KaXQgcHJvdmlkZXMgYSB1bmlmaWVkIHdheSBmb3Iga2VybmVsIHZpcnRpbyBkcml2ZXIg dG8gdGFsayB3aXRoIG1kZXYKZGV2aWNlIGltcGxlbWVudGF0aW9uLgoKVGhvdWdoIHRoZSBzZXJp ZXMgb25seSBjb250YWlucyBrZXJuZWwgZHJpdmVyIHN1cHBvcnQsIHRoZSBnb2FsIGlzIHRvCm1h a2UgdGhlIHRyYW5zcG9ydCBnZW5lcmljIGVub3VnaCB0byBzdXBwb3J0IHVzZXJzcGFjZSBkcml2 ZXJzLiBUaGlzCm1lYW5zIHZob3N0LW1kZXZbMV0gY291bGQgYmUgYnVpbHQgb24gdG9wIGFzIHdl bGwgYnkgcmVzdWluZyB0aGUKdHJhbnNwb3J0LgoKQSBzYW1wbGUgZHJpdmVyIGlzIGFsc28gaW1w bGVtZW50ZWQgd2hpY2ggc2ltdWxhdGUgYSB2aXJpdG8tbmV0Cmxvb3BiYWNrIGV0aGVybmV0IGRl dmljZSBvbiB0b3Agb2YgdnJpbmdoICsgd29ya3F1ZXVlLiBUaGlzIGNvdWxkIGJlCnVzZWQgYXMg YSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gZm9yIHJlYWwgaGFyZHdhcmUgZHJpdmVyLgoKQWxz byBhIHJlYWwgSUZDIFZGIGRyaXZlciB3YXMgYWxzbyBwb3N0ZWQgaGVyZVsyXSB3aGljaCBpcyBh IGdvb2QKcmVmZXJlbmNlIGZvciB2ZW5kb3JzIHdobyBpcyBpbnRlcmVzdGVkIGluIHRoZWlyIG93 biB2aXJ0aW8gZGF0YXBhdGgKb2ZmbG9hZGluZyBwcm9kdWN0LgoKQ29uc2lkZXIgbWRldiBmcmFt ZXdvcmsgb25seSBzdXBwb3J0IFZGSU8gZGV2aWNlIGFuZCBkcml2ZXIgcmlnaHQgbm93LAp0aGlz IHNlcmllcyBhbHNvIGV4dGVuZCBpdCB0byBzdXBwb3J0IG90aGVyIHR5cGVzLiBUaGlzIGlzIGRv bmUKdGhyb3VnaCBkZWNvdXBsaW5nIFZGSU8gc3BlY2lmaWMgYml0cyBvdXQgb2YgbWRldiBjb3Jl IGFuZCBtYWtlIG1kZXYKYW4gaW5kZXBlbmRlbnQgbW9kdWxlIHRoYXQgYWxsb3dzIHRvIGJlIHVz ZWQgYnkgbXVsdGlwbGUgdHlwZXMgb2YKYnVzZXMuCgpQa3RnZW4gdGVzdCB3YXMgZG9uZSB3aXRo IHZpcml0by1uZXQgKyBtdm5ldCBsb29wIGJhY2sgZGV2aWNlLgoKUGxlYXNlIHJldmlldy4KClsx XSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS83LzYyClsyXSBodHRwczovL2xrbWwub3Jn L2xrbWwvMjAxOS8xMS8xMi8yMTUKCkNoYW5nZXMgZnJvbSBWMTI6Ci0gcmViYXNlIG9uIHRvcCBv ZiBndnQtbGludXguZ2l0CgpDaGFuZ2VzIGZyb20gVjExOgotIGRlY291cGxlIFZGSU8gc3BlY2lm aWMgYml0cyBvdXQgb2YgbWRldiBjb3JlCi0gbWFrZSBtZGV2IGFuIGluZGVwZGVudCBtb2R1bGUg dG8gYWxsb3cgYnVzZXMgb3RoZXIgdGhhbiBWRklPIG1kZXYKLSBhbGxvdyBzdHJ1Y3R1cmUgY29t cG9zaXRpb24gb2YgbWRldiB0aHJvdWdoIHNwZWNpZml5IHRoZSBzaXplIG9mCiAgbWRldiBzdHJ1 Y3R1cmUKLSBpbnRyb2R1Y2UgbWRldl92ZmlvIHN0cnVjdHVyZSBhbmQgc3RvcmUgdGhlIFZGSU8g c3BlY2lmaWMgY2FsbGJhY2tzCiAgdGhlcmUKLSBkb24ndCB1c2UgIm1kZXYiIGJ1cyBmb3Igdmly dGlvLCB1c2UgYSBuZXcgIm1kZXZfdmlydGlvIiBidXMsIGFuZAogIHN0b3JlIHRoZSB2aXJ0aW8g c3BlY2lmaWMgY2FsbGJhY2tzIGluIG1kZXZfdmlydGlvIHN0cnVjdHVyZS4KLSBkbyB0aGUgY2xh c3NfaWQsIG1hdGNoaW5nIG9uIHRvcCBvZiAibWRldl92aXJ0aW8iIGJ1cwoKQ2hhbmdlcyBmcm9t IFYxMDoKLSByZW5hbWUgbXZuZXQgdG8gbXZuZXRfbG9vcGJhY2sKLSBmaXggdHlwbyBpbiB0aGUg aGVscCB0ZXh0IGZvciBzYW1wbGUgS2NvbmZpZwoKQ2hhbmdlcyBmcm9tIFY5OgotIFR3ZWFrIHRo ZSBoZWxwIHRleHQgZm9yIHZpcml0by1tZGV2IGtjb25maWcKCkNoYW5nZXMgZnJvbSBWODoKLSB0 cnkgc2lsZW50IGNoZWNrcGF0Y2gsIHNvbWUgYXJlIHN0aWxsIHRoZXJlIGJlY3Vhc2UgdGhleSB3 ZXJlIGluaGVyaXRlZAogIGZyb20gdmlydGlvX2NvbmZpZ19vcHMgd2hpY2ggbmVlZHMgdG8gYmUg cmVzb2x2ZWQgaW4gYW4gaW5kZXBlbmRlbnQgc2VyaWVzCi0gdHdlYWsgb24gdGhlIGNvbW1lbnQg YW5kIGRvYwotIHJlbW92ZSBWSVJUSU9fTURFVl9GX1ZFUlNJT05fMSBjb21wbGV0ZWx5Ci0gcmVu YW1lIENPTkZJR19WSVJUSU9fTURFVl9ERVZJQ0UgdG8gQ09ORklHX1ZJUlRJT19NREVWCgpDaGFu Z2VzIGZyb20gVjc6Ci0gZHJvcCB7c2V0fGdldH1fbWRldl9mZWF0dXJlcyBmb3IgdmlydGlvCi0g dHlwbyBhbmQgY29tbWVudCBzdHlsZSBmaXhlcwoKQ2hhbmdlcyBmcm9tIFY2OgotIHJlbmFtZSBv cHMgZmlsZXMgYW5kIGNvbXBpbGUgZ3VhcmQKCkNoYW5nZXMgZnJvbSBWNToKLSB1c2UgZGV2X3dh cm4oKSBpbnN0ZWFkIG9mIFdBUk4oMSkgd2hlbiBjbGFzcyBpZCBpcyBub3Qgc2V0Ci0gdmFsaWRh dGUgaWRfdGFibGUgYmVmb3JlIHRyeWluZyB0byBkbyBtYXRjaGluZyBiZXR3ZWVuIGRldmljZSBh bmQKICBkcml2ZXIKLSBhZGQgd2lsZGNhcmQgZm9yIG1vZHBvc3Qgc2NyaXB0Ci0gdXNlIHVuaXF1 ZSBuYW1lIGZvciBpZF90YWJsZQotIG1vdmUgZ2V0X21kZXZfZmVhdHVyZXMoKSB0byBiZSB0aGUg Zmlyc3QgbWVtYmVyIG9mIHZpcnRpb19kZXZpY2Vfb3BzCiAgYW5kIG1vcmUgY29tbWVudHMgZm9y IGl0Ci0gdHlwbyBmaXhlcyBmb3IgdGhlIGNvbW1lbnRzIGFib3ZlIHZpcnRpb19tZGV2X29wcwoK Q2hhbmdlcyBmcm9tIFY0OgotIGtlZXAgbWRldl9zZXRfY2xhc3MoKSBmb3IgdGhlIGRldmljZSB0 aGF0IGRvZXNuJ3QgdXNlIGRldmljZSBvcHMKLSB1c2UgdW5pb24gZm9yIGRldmljZSBvcHMgcG9p bnRlciBpbiBtZGV2X2RldmljZQotIGludHJvZHVjZSBjbGFzcyBzcGVjaWZpYyBoZWxwZXIgZm9y IGdldHRpbmcgaXMgZGV2aWNlIG9wcwotIHVzZSBXQVJOX09OIGluc3RlYWQgb2YgQlVHX09OIGlu IG1kZXZfc2V0X3ZpcnRpb19vcHMKLSBleHBsYWluIGRldGFpbHMgb2YgZ2V0X21kZXZfZmVhdHVy ZXMoKSBhbmQgZ2V0X3ZlbmRvcl9pZCgpCi0gZGlzdGluZ3Vpc2ggdGhlIG9wdGlvbmFsIHZpcml0 byBkZXZpY2Ugb3BzIGZyb20gbWFuZGF0b3J5IG9uZXMgYW5kCiAgbWFrZSBnZXRfZ2VuZXJhdGlv bigpIG9wdGlvbmFsCi0gcmVuYW1lIHZmaW9fbWRldi5oIHRvIHZmaW9fbWRldl9vcHMuaCwgcmVu YW1lIHZpcml0b19tZGV2LmggdG8KICB2aXJ0aW9fbWRldl9vcHMuaAotIGRvbid0IGFidXNlIHZl cnNpb24gZmlsZWRzIGluIHZpcnRpb19tZGV2IHN0cnVjdHVyZSwgdXNlIGZlYXR1cmVzCiAgaW5z dGVhZAotIGZpeCB3YXJuaW5nIGR1cmluZyBkZXZpY2UgcmVtb3ZlCi0gc3R5bGUgJiBkb2NzIHR3 ZWFrcyBhbmQgdHlwbyBmaXhlcwoKQ2hhbmdlcyBmcm9tIFYzOgotIGRvY3VtZW50IHRoYXQgY2xh c3MgaWQgKGRldmljZSBvcHMpIG11c3QgYmUgc3BlY2lmaWVkIGluIGNyZWF0ZSgpCi0gYWRkIFdB Uk4oKSB3aGVuIHRyeWluZyB0byBzZXQgY2xhc3NfaWQgd2hlbiBpdCBoYXMgYWxyZWFkeSBzZXQK LSBhZGQgV0FSTigpIHdoZW4gY2xhc3NfaWQgaXMgbm90IHNwZWNpZmllZCBpbiBjcmVhdGUoKSBh bmQgY29ycmVjdGx5CiAgcmV0dXJuIGFuIGVycm9yIGluIHRoaXMgY2FzZQotIGNvcnJlY3QgdGhl IHByb3RvdHlwZSBvZiBtZGV2X3NldF9jbGFzcygpIGluIHRoZSBkb2MKLSBhZGQgZG9jdW1lbnRp b24gb2YgbWRldl9zZXRfY2xhc3MoKQotIHJlbW92ZSB0aGUgdW5uZWNlc3NhcnkgImNsYXNzX2lk X2ZhaWwiIGxhYmVsIHdoZW4gY2xhc3MgaWQgaXMgbm90CiAgc3BlY2lmaWVkIGluIGNyZWF0ZSgp Ci0gY29udmVydCBpZF90YWJsZSBpbiB2ZmlvX21kZXYgdG8gY29uc3QKLSBtb3ZlIG1kZXZfc2V0 X2NsYXNzIGFuZCBpdHMgZnJpZW5kcyBhZnRlciBtZGV2X3V1aWQoKQotIHN1cWFzaCB0aGUgcGF0 Y2ggb2YgYnVzIHVldmVudCBpbnRvIHBhdGNoIG9mIGludHJvZHVjaW5nIGNsYXNzIGlkCi0gdHdl YWsgdGhlIHdvcmRzIGluIHRoZSBkb2NzIHBlciBDb3JuZWxpYSBzdWdnZXN0aW9uCi0gdGllIGNs YXNzX2lkIGFuZCBkZXZpY2Ugb3BzIHRocm91Z2ggY2xhc3Mgc3BlY2lmaWMgaW5pdGlhbGl6YXRp b24KICByb3V0aW5lIGxpa2UgbWRldl9zZXRfdmZpb19vcHMoKQotIHR5cG9zIGZpeGVzIGluIHRo ZSBkb2NzIG9mIHZpcnRpby1tZGV2IGNhbGxiYWNrcwotIGRvY3VtZW50IHRoZSB1c2FnZSBvZiB2 aXJ0cXVldWVzIGluIHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2UKLSByZW1vdmUgdGhlIHVzZWxl c3MgdnFzIGFycmF5IGluIHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2UKLSByZW5hbWUgTURFVl9J RF9YWFggdG8gTURFVl9DTEFTU19JRF9YWFgKCkNoYW5nZXMgZnJvbSBWMjoKLSBmYWlsIHdoZW4g Y2xhc3NfaWQgaXMgbm90IHNwZWNpZmllZAotIGRyb3AgdGhlIHZyaW5naCBwYXRjaAotIG1hdGNo IHRoZSBkb2MgdG8gdGhlIGNvZGUKLSB0d2VhayB0aGUgY29tbWl0IGxvZwotIG1vdmUgZGV2aWNl X29wcyBmcm9tIHBhcmVudCB0byBtZGV2IGRldmljZQotIHJlbW92ZSB0aGUgdW51c2VkIE1ERVZf SURfVkhPU1QKCkNoYW5nZXMgZnJvbSBWMToKLSBtb3ZlIHZpcnRpb19tZGV2LmMgdG8gZHJpdmVy cy92aXJ0aW8KLSBzdG9yZSBjbGFzc19pZCBpbiBtZGV2X2RldmljZSBpbnN0ZWFkIG9mIG1kZXZf cGFyZW50Ci0gc3RvcmUgZGV2aWNlX29wcyBpbiBtZGV2X2RldmljZSBpbnN0ZWFkIG9mIG1kZXZf cGFyZW50Ci0gcmVvcmRlciB0aGUgcGF0Y2gsIHZyaW5naCBmaXggY29tZXMgZmlyc3QKLSByZWFs bHkgc2lsZW50IGNvbXBpbGluZyB3YXJuaW5ncwotIHJlYWxseSBzd2l0Y2ggdG8gdXNlIHUxNiBm b3IgY2xhc3NfaWQKLSB1ZXZlbnQgYW5kIG1vZHBvc3Qgc3VwcG9ydCBmb3IgbWRldiBjbGFzc19p ZAotIHZyYWlvdXMgdHdlYWtzIHBlciBjb21tZW50cyBmcm9tIFBhcmF2CgpDaGFuZ2VzIGZyb20g UkZDLVYyOgotIHNpbGVudCBjb21waWxlIHdhcm5pbmdzIG9uIHNvbWUgc3BlY2lmaWMgY29uZmln dXJhdGlvbgotIHVzZSB1MTYgaW5zdGVhZCB1OCBmb3IgY2xhc3MgaWQKLSByZXNldmUgTURFVl9J RF9WSE9TVCBmb3IgZnV0dXJlIHZob3N0LW1kZXYgd29yawotIGludHJvZHVjZSAidmlydGlvIiB0 eXBlIGZvciBtdm5ldCBhbmQgbWFrZSAidmhvc3QiIHR5cGUgZm9yIGZ1dHVyZQogIHdvcmsKLSBh ZGQgZW50cmllcyBpbiBNQUlOVEFJTkVSCi0gdHdlYWsgYW5kIHR5cG9zIGZpeGVzIGluIGNvbW1p dCBsb2cKCkNoYW5nZXMgZnJvbSBSRkMtVjE6Ci0gcmVuYW1lIGRldmljZSBpZCB0byBjbGFzcyBp ZAotIGFkZCBkb2NzIGZvciBjbGFzcyBpZCBhbmQgZGV2aWNlIHNwZWNpZmljIG9wcyAoZGV2aWNl X29wcykKLSBzcGxpdCBkZXZpY2Vfb3BzIGludG8gc2VwZXJhdGUgaGVhZGVycwotIGRyb3AgdGhl IG1kZXZfc2V0X2RtYV9vcHMoKQotIHVzZSBkZXZpY2Vfb3BzIHRvIGltcGxlbWVudCB0aGUgdHJh bnNwb3J0IEFQSSwgdGhlbiBpdCdzIG5vdCBhIHBhcnQKICBvZiBVQVBJIGFueSBtb3JlCi0gdXNl IEdGUF9BVE9NSUMgaW4gbXZuZXQgc2FtcGxlIGRldmljZSBhbmQgb3RoZXIgdHdlYWtzCi0gc2V0 X3ZyaW5nX2Jhc2UvZ2V0X3ZyaW5nX2Jhc2Ugc3VwcG9ydCBmb3IgbXZuZXQgZGV2aWNlCgpKYXNv biBXYW5nICg2KToKICBtZGV2OiBtYWtlIG1kZXYgYnVzIGFnbm9zdGljCiAgbWRldjogc3BsaXQg b3V0IFZGSU8gYnVzIHNwZWNpZmljIHBhcmVudCBvcHMKICBtZGV2OiBtb3ZlIHRvIGRyaXZlcnMv CiAgbWRldjogaW50cm9kdWNlIG1lZGlhdGVkIHZpcnRpbyBidXMKICB2aXJ0aW86IGludHJvZHVj ZSBhIG1kZXYgYmFzZWQgdHJhbnNwb3J0CiAgZG9jczogc2FtcGxlIGRyaXZlciB0byBkZW1vbnN0 cmF0ZSBob3cgdG8gaW1wbGVtZW50IHZpcnRpby1tZGV2CiAgICBmcmFtZXdvcmsKCiAuLi4vZHJp dmVyLWFwaS92ZmlvLW1lZGlhdGVkLWRldmljZS5yc3QgICAgICAgfCAgOTQgKystCiBNQUlOVEFJ TkVSUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKy0KIGRyaXZlcnMv S2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBkcml2ZXJzL01h a2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3Z0L2t2bWd0LmMgICAgICAgICAgICAgIHwgIDI0ICstCiBkcml2ZXJzL21kZXYv S2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjkgKwogZHJpdmVycy9tZGV2L01h a2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA3ICsKIGRyaXZlcnMve3ZmaW8gPT4g fS9tZGV2L21kZXZfY29yZS5jICAgICAgICAgICB8IDEwNyArKy0KIGRyaXZlcnMve3ZmaW8gPT4g fS9tZGV2L21kZXZfZHJpdmVyLmMgICAgICAgICB8ICAyOSArLQogZHJpdmVycy97dmZpbyA9PiB9 L21kZXYvbWRldl9wcml2YXRlLmggICAgICAgIHwgIDE4ICstCiBkcml2ZXJzL3t2ZmlvID0+IH0v bWRldi9tZGV2X3N5c2ZzLmMgICAgICAgICAgfCAgIDAKIGRyaXZlcnMvbWRldi92ZmlvLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICA3NiArKwogZHJpdmVycy9tZGV2L3ZpcnRpby5jICAg ICAgICAgICAgICAgICAgICAgICAgIHwgMTI2ICsrKysKIGRyaXZlcnMvczM5MC9jaW8vdmZpb19j Y3dfb3BzLmMgICAgICAgICAgICAgICB8ICAyMyArLQogZHJpdmVycy9zMzkwL2NyeXB0by92Zmlv X2FwX29wcy5jICAgICAgICAgICAgIHwgIDM0ICstCiBkcml2ZXJzL3MzOTAvY3J5cHRvL3ZmaW9f YXBfcHJpdmF0ZS5oICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvdmZpby9tZGV2L0tjb25maWcg ICAgICAgICAgICAgICAgICAgICB8ICAxMSAtCiBkcml2ZXJzL3ZmaW8vbWRldi9NYWtlZmlsZSAg ICAgICAgICAgICAgICAgICAgfCAgIDQgLQogZHJpdmVycy92ZmlvL21kZXYvdmZpb19tZGV2LmMg ICAgICAgICAgICAgICAgIHwgIDQ1ICstCiBkcml2ZXJzL3ZmaW8vdmZpb19pb21tdV90eXBlMS5j ICAgICAgICAgICAgICAgfCAgIDYgKy0KIGRyaXZlcnMvdmlydGlvL0tjb25maWcgICAgICAgICAg ICAgICAgICAgICAgICB8ICAxMyArCiBkcml2ZXJzL3ZpcnRpby9NYWtlZmlsZSAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDEgKwogZHJpdmVycy92aXJ0aW8vdmlydGlvX21kZXYuYyAgICAgICAg ICAgICAgICAgIHwgNDA5ICsrKysrKysrKysrCiBpbmNsdWRlL2xpbnV4L21kZXYuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgNDkgKy0KIGluY2x1ZGUvbGludXgvbWRldl92ZmlvLmggICAg ICAgICAgICAgICAgICAgICB8ICA2OCArKwogaW5jbHVkZS9saW51eC9tZGV2X3ZpcnRpby5oICAg ICAgICAgICAgICAgICAgIHwgMTY4ICsrKysrCiBpbmNsdWRlL2xpbnV4L21vZF9kZXZpY2V0YWJs ZS5oICAgICAgICAgICAgICAgfCAgIDggKwogc2FtcGxlcy9LY29uZmlnICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDEwICsKIHNhbXBsZXMvdmZpby1tZGV2L01ha2VmaWxlICAgICAg ICAgICAgICAgICAgICB8ICAgMSArCiBzYW1wbGVzL3ZmaW8tbWRldi9tYm9jaHMuYyAgICAgICAg ICAgICAgICAgICAgfCAgMjYgKy0KIHNhbXBsZXMvdmZpby1tZGV2L21kcHkuYyAgICAgICAgICAg ICAgICAgICAgICB8ICAyNyArLQogc2FtcGxlcy92ZmlvLW1kZXYvbXR0eS5jICAgICAgICAgICAg ICAgICAgICAgIHwgIDI0ICstCiBzYW1wbGVzL3ZmaW8tbWRldi9tdm5ldF9sb29wYmFjay5jICAg ICAgICAgICAgfCA2OTAgKysrKysrKysrKysrKysrKysrCiBzY3JpcHRzL21vZC9kZXZpY2V0YWJs ZS1vZmZzZXRzLmMgICAgICAgICAgICAgfCAgIDMgKwogc2NyaXB0cy9tb2QvZmlsZTJhbGlhcy5j ICAgICAgICAgICAgICAgICAgICAgIHwgIDEyICsKIDM1IGZpbGVzIGNoYW5nZWQsIDE5MjMgaW5z ZXJ0aW9ucygrKSwgMjM1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMv bWRldi9LY29uZmlnCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9tZGV2L01ha2VmaWxlCiBy ZW5hbWUgZHJpdmVycy97dmZpbyA9PiB9L21kZXYvbWRldl9jb3JlLmMgKDc2JSkKIHJlbmFtZSBk cml2ZXJzL3t2ZmlvID0+IH0vbWRldi9tZGV2X2RyaXZlci5jICg4MyUpCiByZW5hbWUgZHJpdmVy cy97dmZpbyA9PiB9L21kZXYvbWRldl9wcml2YXRlLmggKDgxJSkKIHJlbmFtZSBkcml2ZXJzL3t2 ZmlvID0+IH0vbWRldi9tZGV2X3N5c2ZzLmMgKDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp dmVycy9tZGV2L3ZmaW8uYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbWRldi92aXJ0aW8u YwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvdmlydGlvL3ZpcnRpb19tZGV2LmMKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L21kZXZfdmZpby5oCiBjcmVhdGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS9saW51eC9tZGV2X3ZpcnRpby5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgc2FtcGxl cy92ZmlvLW1kZXYvbXZuZXRfbG9vcGJhY2suYwoKLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApk cmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs