From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 7 Nov 2019 04:09:35 -0500 From: "Michael S. Tsirkin" Subject: Re: [PATCH V10 0/6] mdev based hardware virtio offloading support Message-ID: <20191107040854-mutt-send-email-mst@kernel.org> References: <20191106133531.693-1-jasowang@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20191106133531.693-1-jasowang@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: To: Jason Wang Cc: 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, tiwei.bie@intel.com, virtualization@lists.linux-foundation.org, netdev@vger.kernel.org, cohuck@redhat.com, maxime.coquelin@redhat.com, cunming.liang@intel.com, zhihong.wang@intel.com, rob.miller@broadcom.com, xiao.w.wang@intel.com, haotian.wang@sifive.com, zhenyuw@linux.intel.com, zhi.a.wang@intel.com, jani.nikula@linux.intel.com, joonas.lahtinen@linux.intel.com, rodrigo.vivi@intel.com, airlied@linux.ie, daniel@ffwll.ch, farman@linux.ibm.com, pasic@linux.ibm.com, sebott@linux.ibm.com, oberpar@linux.ibm.com, heiko.carstens@de.ibm.com, gor@linux.ibm.com, borntraeger@de.ibm.com, akrowiak@linux.ibm.com, freude@linux.ibm.com, lingshan.zhu@intel.com, idos@mellanox.com, eperezma@redhat.com, lulu@redhat.com, parav@mellanox.com, christophe.de.dinechin@gmail.com, kevin.tian@intel.com, stefanha@redhat.com On Wed, Nov 06, 2019 at 09:35:25PM +0800, Jason Wang wrote: > Hi all: > > There are hardwares that can do virtio datapath offloading while > having its own control path. This path tries to implement a mdev based > unified API to support using kernel virtio driver to drive those > devices. This is done by introducing a new mdev transport for virtio > (virtio_mdev) and register itself as a new kind of mdev driver. Then > it provides a unified way for kernel virtio driver to talk with mdev > device implementation. > > Though the series only contains kernel driver support, the goal is to > make the transport generic enough to support userspace drivers. This > means vhost-mdev[1] could be built on top as well by resuing the > transport. > > A sample driver is also implemented which simulate a virito-net > loopback ethernet device on top of vringh + workqueue. This could be > used as a reference implementation for real hardware driver. > > Also a real IFC VF driver was also posted here[2] which is a good > reference for vendors who is interested in their own virtio datapath > offloading product. > > Consider mdev framework only support VFIO device and driver right now, > this series also extend it to support other types. This is done > through introducing class id to the device and pairing it with > id_talbe claimed by the driver. On top, this seris also decouple > device specific ops out of the common ones for implementing class > specific operations over mdev bus. > > Pktgen test was done with virito-net + mvnet loop back device. Patches 1-5: Acked-by: Michael S. Tsirkin Patch 6: I'd like the module to be renamed to make it more obvious what it does. With that: Acked-by: Michael S. Tsirkin > Please review. > > [1] https://lkml.org/lkml/2019/11/5/424 > [2] https://lkml.org/lkml/2019/11/5/227 > > Changes from V9: > - Tweak the help text for virito-mdev kconfig > > Changes from V8: > - try silent checkpatch, some are still there becuase they were inherited > from virtio_config_ops which needs to be resolved in an independent series > - tweak on the comment and doc > - remove VIRTIO_MDEV_F_VERSION_1 completely > - rename CONFIG_VIRTIO_MDEV_DEVICE to CONFIG_VIRTIO_MDEV > > Changes from V7: > - drop {set|get}_mdev_features for virtio > - typo and comment style fixes > > Changes from V6: > - rename ops files and compile guard > > Changes from V5: > - use dev_warn() instead of WARN(1) when class id is not set > - validate id_table before trying to do matching between device and > driver > - add wildcard for modpost script > - use unique name for id_table > - move get_mdev_features() to be the first member of virtio_device_ops > and more comments for it > - typo fixes for the comments above virtio_mdev_ops > > Changes from V4: > - keep mdev_set_class() for the device that doesn't use device ops > - use union for device ops pointer in mdev_device > - introduce class specific helper for getting is device ops > - use WARN_ON instead of BUG_ON in mdev_set_virtio_ops > - explain details of get_mdev_features() and get_vendor_id() > - distinguish the optional virito device ops from mandatory ones and > make get_generation() optional > - rename vfio_mdev.h to vfio_mdev_ops.h, rename virito_mdev.h to > virtio_mdev_ops.h > - don't abuse version fileds in virtio_mdev structure, use features > instead > - fix warning during device remove > - style & docs tweaks and typo fixes > > Changes from V3: > - document that class id (device ops) must be specified in create() > - add WARN() when trying to set class_id when it has already set > - add WARN() when class_id is not specified in create() and correctly > return an error in this case > - correct the prototype of mdev_set_class() in the doc > - add documention of mdev_set_class() > - remove the unnecessary "class_id_fail" label when class id is not > specified in create() > - convert id_table in vfio_mdev to const > - move mdev_set_class and its friends after mdev_uuid() > - suqash the patch of bus uevent into patch of introducing class id > - tweak the words in the docs per Cornelia suggestion > - tie class_id and device ops through class specific initialization > routine like mdev_set_vfio_ops() > - typos fixes in the docs of virtio-mdev callbacks > - document the usage of virtqueues in struct virtio_mdev_device > - remove the useless vqs array in struct virtio_mdev_device > - rename MDEV_ID_XXX to MDEV_CLASS_ID_XXX > > Changes from V2: > - fail when class_id is not specified > - drop the vringh patch > - match the doc to the code > - tweak the commit log > - move device_ops from parent to mdev device > - remove the unused MDEV_ID_VHOST > > Changes from V1: > - move virtio_mdev.c to drivers/virtio > - store class_id in mdev_device instead of mdev_parent > - store device_ops in mdev_device instead of mdev_parent > - reorder the patch, vringh fix comes first > - really silent compiling warnings > - really switch to use u16 for class_id > - uevent and modpost support for mdev class_id > - vraious tweaks per comments from Parav > > Changes from RFC-V2: > - silent compile warnings on some specific configuration > - use u16 instead u8 for class id > - reseve MDEV_ID_VHOST for future vhost-mdev work > - introduce "virtio" type for mvnet and make "vhost" type for future > work > - add entries in MAINTAINER > - tweak and typos fixes in commit log > > Changes from RFC-V1: > - rename device id to class id > - add docs for class id and device specific ops (device_ops) > - split device_ops into seperate headers > - drop the mdev_set_dma_ops() > - use device_ops to implement the transport API, then it's not a part > of UAPI any more > - use GFP_ATOMIC in mvnet sample device and other tweaks > - set_vring_base/get_vring_base support for mvnet device > > Jason Wang (6): > mdev: class id support > modpost: add support for mdev class id > mdev: introduce device specific ops > mdev: introduce virtio device and its device ops > virtio: introduce a mdev based transport > docs: sample driver to demonstrate how to implement virtio-mdev > framework > > .../driver-api/vfio-mediated-device.rst | 38 +- > MAINTAINERS | 3 + > drivers/gpu/drm/i915/gvt/kvmgt.c | 17 +- > drivers/s390/cio/vfio_ccw_ops.c | 17 +- > drivers/s390/crypto/vfio_ap_ops.c | 13 +- > drivers/vfio/mdev/mdev_core.c | 60 ++ > drivers/vfio/mdev/mdev_driver.c | 25 + > drivers/vfio/mdev/mdev_private.h | 8 + > drivers/vfio/mdev/vfio_mdev.c | 45 +- > drivers/virtio/Kconfig | 13 + > drivers/virtio/Makefile | 1 + > drivers/virtio/virtio_mdev.c | 406 +++++++++++ > include/linux/mdev.h | 57 +- > include/linux/mdev_vfio_ops.h | 52 ++ > include/linux/mdev_virtio_ops.h | 147 ++++ > include/linux/mod_devicetable.h | 8 + > samples/Kconfig | 10 + > samples/vfio-mdev/Makefile | 1 + > samples/vfio-mdev/mbochs.c | 19 +- > samples/vfio-mdev/mdpy.c | 19 +- > samples/vfio-mdev/mtty.c | 17 +- > samples/vfio-mdev/mvnet.c | 686 ++++++++++++++++++ > scripts/mod/devicetable-offsets.c | 3 + > scripts/mod/file2alias.c | 11 + > 24 files changed, 1585 insertions(+), 91 deletions(-) > create mode 100644 drivers/virtio/virtio_mdev.c > create mode 100644 include/linux/mdev_vfio_ops.h > create mode 100644 include/linux/mdev_virtio_ops.h > create mode 100644 samples/vfio-mdev/mvnet.c > > -- > 2.19.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [PATCH V10 0/6] mdev based hardware virtio offloading support Date: Thu, 7 Nov 2019 04:09:35 -0500 Message-ID: <20191107040854-mutt-send-email-mst@kernel.org> References: <20191106133531.693-1-jasowang@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7C7756F3B6 for ; Thu, 7 Nov 2019 09:09:48 +0000 (UTC) Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id EDED2368E6 for ; Thu, 7 Nov 2019 09:09:47 +0000 (UTC) Received: by mail-qk1-f199.google.com with SMTP id a129so1460001qkg.22 for ; Thu, 07 Nov 2019 01:09:47 -0800 (PST) Content-Disposition: inline In-Reply-To: <20191106133531.693-1-jasowang@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jason Wang Cc: stefanha@redhat.com, christophe.de.dinechin@gmail.com, kvm@vger.kernel.org, airlied@linux.ie, heiko.carstens@de.ibm.com, kevin.tian@intel.com, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org, kwankhede@nvidia.com, rob.miller@broadcom.com, linux-s390@vger.kernel.org, sebott@linux.ibm.com, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, cunming.liang@intel.com, zhi.a.wang@intel.com, farman@linux.ibm.com, idos@mellanox.com, gor@linux.ibm.com, intel-gfx@lists.freedesktop.org, alex.williamson@redhat.com, xiao.w.wang@intel.com, freude@linux.ibm.com, parav@mellanox.com, zhihong.wang@intel.com, rodrigo.vivi@intel.com, intel-gvt-dev@lists.freedesktop.org, akrowiak@linux.ibm.com, oberpar@linux.ibm.com, tiwei.bie@intel.com, netdev@vger.kernel.org, cohuck@redhat.com, linux-kernel@vger.kernel.orgm List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBOb3YgMDYsIDIwMTkgYXQgMDk6MzU6MjVQTSArMDgwMCwgSmFzb24gV2FuZyB3cm90 ZToKPiBIaSBhbGw6Cj4gCj4gVGhlcmUgYXJlIGhhcmR3YXJlcyB0aGF0IGNhbiBkbyB2aXJ0aW8g ZGF0YXBhdGggb2ZmbG9hZGluZyB3aGlsZQo+IGhhdmluZyBpdHMgb3duIGNvbnRyb2wgcGF0aC4g VGhpcyBwYXRoIHRyaWVzIHRvIGltcGxlbWVudCBhIG1kZXYgYmFzZWQKPiB1bmlmaWVkIEFQSSB0 byBzdXBwb3J0IHVzaW5nIGtlcm5lbCB2aXJ0aW8gZHJpdmVyIHRvIGRyaXZlIHRob3NlCj4gZGV2 aWNlcy4gVGhpcyBpcyBkb25lIGJ5IGludHJvZHVjaW5nIGEgbmV3IG1kZXYgdHJhbnNwb3J0IGZv ciB2aXJ0aW8KPiAodmlydGlvX21kZXYpIGFuZCByZWdpc3RlciBpdHNlbGYgYXMgYSBuZXcga2lu ZCBvZiBtZGV2IGRyaXZlci4gVGhlbgo+IGl0IHByb3ZpZGVzIGEgdW5pZmllZCB3YXkgZm9yIGtl cm5lbCB2aXJ0aW8gZHJpdmVyIHRvIHRhbGsgd2l0aCBtZGV2Cj4gZGV2aWNlIGltcGxlbWVudGF0 aW9uLgo+IAo+IFRob3VnaCB0aGUgc2VyaWVzIG9ubHkgY29udGFpbnMga2VybmVsIGRyaXZlciBz dXBwb3J0LCB0aGUgZ29hbCBpcyB0bwo+IG1ha2UgdGhlIHRyYW5zcG9ydCBnZW5lcmljIGVub3Vn aCB0byBzdXBwb3J0IHVzZXJzcGFjZSBkcml2ZXJzLiBUaGlzCj4gbWVhbnMgdmhvc3QtbWRldlsx XSBjb3VsZCBiZSBidWlsdCBvbiB0b3AgYXMgd2VsbCBieSByZXN1aW5nIHRoZQo+IHRyYW5zcG9y dC4KPiAKPiBBIHNhbXBsZSBkcml2ZXIgaXMgYWxzbyBpbXBsZW1lbnRlZCB3aGljaCBzaW11bGF0 ZSBhIHZpcml0by1uZXQKPiBsb29wYmFjayBldGhlcm5ldCBkZXZpY2Ugb24gdG9wIG9mIHZyaW5n aCArIHdvcmtxdWV1ZS4gVGhpcyBjb3VsZCBiZQo+IHVzZWQgYXMgYSByZWZlcmVuY2UgaW1wbGVt ZW50YXRpb24gZm9yIHJlYWwgaGFyZHdhcmUgZHJpdmVyLgo+IAo+IEFsc28gYSByZWFsIElGQyBW RiBkcml2ZXIgd2FzIGFsc28gcG9zdGVkIGhlcmVbMl0gd2hpY2ggaXMgYSBnb29kCj4gcmVmZXJl bmNlIGZvciB2ZW5kb3JzIHdobyBpcyBpbnRlcmVzdGVkIGluIHRoZWlyIG93biB2aXJ0aW8gZGF0 YXBhdGgKPiBvZmZsb2FkaW5nIHByb2R1Y3QuCj4gCj4gQ29uc2lkZXIgbWRldiBmcmFtZXdvcmsg b25seSBzdXBwb3J0IFZGSU8gZGV2aWNlIGFuZCBkcml2ZXIgcmlnaHQgbm93LAo+IHRoaXMgc2Vy aWVzIGFsc28gZXh0ZW5kIGl0IHRvIHN1cHBvcnQgb3RoZXIgdHlwZXMuIFRoaXMgaXMgZG9uZQo+ IHRocm91Z2ggaW50cm9kdWNpbmcgY2xhc3MgaWQgdG8gdGhlIGRldmljZSBhbmQgcGFpcmluZyBp dCB3aXRoCj4gaWRfdGFsYmUgY2xhaW1lZCBieSB0aGUgZHJpdmVyLiBPbiB0b3AsIHRoaXMgc2Vy aXMgYWxzbyBkZWNvdXBsZQo+IGRldmljZSBzcGVjaWZpYyBvcHMgb3V0IG9mIHRoZSBjb21tb24g b25lcyBmb3IgaW1wbGVtZW50aW5nIGNsYXNzCj4gc3BlY2lmaWMgb3BlcmF0aW9ucyBvdmVyIG1k ZXYgYnVzLgo+IAo+IFBrdGdlbiB0ZXN0IHdhcyBkb25lIHdpdGggdmlyaXRvLW5ldCArIG12bmV0 IGxvb3AgYmFjayBkZXZpY2UuCgoKUGF0Y2hlcyAxLTU6CgpBY2tlZC1ieTogTWljaGFlbCBTLiBU c2lya2luIDxtc3RAcmVkaGF0LmNvbT4KClBhdGNoIDY6IEknZCBsaWtlIHRoZSBtb2R1bGUgdG8g YmUgcmVuYW1lZCB0byBtYWtlIGl0IG1vcmUKb2J2aW91cyB3aGF0IGl0IGRvZXMuIFdpdGggdGhh dDoKCkFja2VkLWJ5OiBNaWNoYWVsIFMuIFRzaXJraW4gPG1zdEByZWRoYXQuY29tPgoKPiBQbGVh c2UgcmV2aWV3Lgo+IAo+IFsxXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzQyNAo+ IFsyXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzIyNwo+IAo+IENoYW5nZXMgZnJv bSBWOToKPiAtIFR3ZWFrIHRoZSBoZWxwIHRleHQgZm9yIHZpcml0by1tZGV2IGtjb25maWcKPiAK PiBDaGFuZ2VzIGZyb20gVjg6Cj4gLSB0cnkgc2lsZW50IGNoZWNrcGF0Y2gsIHNvbWUgYXJlIHN0 aWxsIHRoZXJlIGJlY3Vhc2UgdGhleSB3ZXJlIGluaGVyaXRlZAo+ICAgZnJvbSB2aXJ0aW9fY29u ZmlnX29wcyB3aGljaCBuZWVkcyB0byBiZSByZXNvbHZlZCBpbiBhbiBpbmRlcGVuZGVudCBzZXJp ZXMKPiAtIHR3ZWFrIG9uIHRoZSBjb21tZW50IGFuZCBkb2MKPiAtIHJlbW92ZSBWSVJUSU9fTURF Vl9GX1ZFUlNJT05fMSBjb21wbGV0ZWx5Cj4gLSByZW5hbWUgQ09ORklHX1ZJUlRJT19NREVWX0RF VklDRSB0byBDT05GSUdfVklSVElPX01ERVYKPiAKPiBDaGFuZ2VzIGZyb20gVjc6Cj4gLSBkcm9w IHtzZXR8Z2V0fV9tZGV2X2ZlYXR1cmVzIGZvciB2aXJ0aW8KPiAtIHR5cG8gYW5kIGNvbW1lbnQg c3R5bGUgZml4ZXMKPiAKPiBDaGFuZ2VzIGZyb20gVjY6Cj4gLSByZW5hbWUgb3BzIGZpbGVzIGFu ZCBjb21waWxlIGd1YXJkCj4gCj4gQ2hhbmdlcyBmcm9tIFY1Ogo+IC0gdXNlIGRldl93YXJuKCkg aW5zdGVhZCBvZiBXQVJOKDEpIHdoZW4gY2xhc3MgaWQgaXMgbm90IHNldAo+IC0gdmFsaWRhdGUg aWRfdGFibGUgYmVmb3JlIHRyeWluZyB0byBkbyBtYXRjaGluZyBiZXR3ZWVuIGRldmljZSBhbmQK PiAgIGRyaXZlcgo+IC0gYWRkIHdpbGRjYXJkIGZvciBtb2Rwb3N0IHNjcmlwdAo+IC0gdXNlIHVu aXF1ZSBuYW1lIGZvciBpZF90YWJsZQo+IC0gbW92ZSBnZXRfbWRldl9mZWF0dXJlcygpIHRvIGJl IHRoZSBmaXJzdCBtZW1iZXIgb2YgdmlydGlvX2RldmljZV9vcHMKPiAgIGFuZCBtb3JlIGNvbW1l bnRzIGZvciBpdAo+IC0gdHlwbyBmaXhlcyBmb3IgdGhlIGNvbW1lbnRzIGFib3ZlIHZpcnRpb19t ZGV2X29wcwo+IAo+IENoYW5nZXMgZnJvbSBWNDoKPiAtIGtlZXAgbWRldl9zZXRfY2xhc3MoKSBm b3IgdGhlIGRldmljZSB0aGF0IGRvZXNuJ3QgdXNlIGRldmljZSBvcHMKPiAtIHVzZSB1bmlvbiBm b3IgZGV2aWNlIG9wcyBwb2ludGVyIGluIG1kZXZfZGV2aWNlCj4gLSBpbnRyb2R1Y2UgY2xhc3Mg c3BlY2lmaWMgaGVscGVyIGZvciBnZXR0aW5nIGlzIGRldmljZSBvcHMKPiAtIHVzZSBXQVJOX09O IGluc3RlYWQgb2YgQlVHX09OIGluIG1kZXZfc2V0X3ZpcnRpb19vcHMKPiAtIGV4cGxhaW4gZGV0 YWlscyBvZiBnZXRfbWRldl9mZWF0dXJlcygpIGFuZCBnZXRfdmVuZG9yX2lkKCkKPiAtIGRpc3Rp bmd1aXNoIHRoZSBvcHRpb25hbCB2aXJpdG8gZGV2aWNlIG9wcyBmcm9tIG1hbmRhdG9yeSBvbmVz IGFuZAo+ICAgbWFrZSBnZXRfZ2VuZXJhdGlvbigpIG9wdGlvbmFsCj4gLSByZW5hbWUgdmZpb19t ZGV2LmggdG8gdmZpb19tZGV2X29wcy5oLCByZW5hbWUgdmlyaXRvX21kZXYuaCB0bwo+ICAgdmly dGlvX21kZXZfb3BzLmgKPiAtIGRvbid0IGFidXNlIHZlcnNpb24gZmlsZWRzIGluIHZpcnRpb19t ZGV2IHN0cnVjdHVyZSwgdXNlIGZlYXR1cmVzCj4gICBpbnN0ZWFkCj4gLSBmaXggd2FybmluZyBk dXJpbmcgZGV2aWNlIHJlbW92ZQo+IC0gc3R5bGUgJiBkb2NzIHR3ZWFrcyBhbmQgdHlwbyBmaXhl cwo+IAo+IENoYW5nZXMgZnJvbSBWMzoKPiAtIGRvY3VtZW50IHRoYXQgY2xhc3MgaWQgKGRldmlj ZSBvcHMpIG11c3QgYmUgc3BlY2lmaWVkIGluIGNyZWF0ZSgpCj4gLSBhZGQgV0FSTigpIHdoZW4g dHJ5aW5nIHRvIHNldCBjbGFzc19pZCB3aGVuIGl0IGhhcyBhbHJlYWR5IHNldAo+IC0gYWRkIFdB Uk4oKSB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQgaW4gY3JlYXRlKCkgYW5kIGNvcnJl Y3RseQo+ICAgcmV0dXJuIGFuIGVycm9yIGluIHRoaXMgY2FzZQo+IC0gY29ycmVjdCB0aGUgcHJv dG90eXBlIG9mIG1kZXZfc2V0X2NsYXNzKCkgaW4gdGhlIGRvYwo+IC0gYWRkIGRvY3VtZW50aW9u IG9mIG1kZXZfc2V0X2NsYXNzKCkKPiAtIHJlbW92ZSB0aGUgdW5uZWNlc3NhcnkgImNsYXNzX2lk X2ZhaWwiIGxhYmVsIHdoZW4gY2xhc3MgaWQgaXMgbm90Cj4gICBzcGVjaWZpZWQgaW4gY3JlYXRl KCkKPiAtIGNvbnZlcnQgaWRfdGFibGUgaW4gdmZpb19tZGV2IHRvIGNvbnN0Cj4gLSBtb3ZlIG1k ZXZfc2V0X2NsYXNzIGFuZCBpdHMgZnJpZW5kcyBhZnRlciBtZGV2X3V1aWQoKQo+IC0gc3VxYXNo IHRoZSBwYXRjaCBvZiBidXMgdWV2ZW50IGludG8gcGF0Y2ggb2YgaW50cm9kdWNpbmcgY2xhc3Mg aWQKPiAtIHR3ZWFrIHRoZSB3b3JkcyBpbiB0aGUgZG9jcyBwZXIgQ29ybmVsaWEgc3VnZ2VzdGlv bgo+IC0gdGllIGNsYXNzX2lkIGFuZCBkZXZpY2Ugb3BzIHRocm91Z2ggY2xhc3Mgc3BlY2lmaWMg aW5pdGlhbGl6YXRpb24KPiAgIHJvdXRpbmUgbGlrZSBtZGV2X3NldF92ZmlvX29wcygpCj4gLSB0 eXBvcyBmaXhlcyBpbiB0aGUgZG9jcyBvZiB2aXJ0aW8tbWRldiBjYWxsYmFja3MKPiAtIGRvY3Vt ZW50IHRoZSB1c2FnZSBvZiB2aXJ0cXVldWVzIGluIHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2UK PiAtIHJlbW92ZSB0aGUgdXNlbGVzcyB2cXMgYXJyYXkgaW4gc3RydWN0IHZpcnRpb19tZGV2X2Rl dmljZQo+IC0gcmVuYW1lIE1ERVZfSURfWFhYIHRvIE1ERVZfQ0xBU1NfSURfWFhYCj4gCj4gQ2hh bmdlcyBmcm9tIFYyOgo+IC0gZmFpbCB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQKPiAt IGRyb3AgdGhlIHZyaW5naCBwYXRjaAo+IC0gbWF0Y2ggdGhlIGRvYyB0byB0aGUgY29kZQo+IC0g dHdlYWsgdGhlIGNvbW1pdCBsb2cKPiAtIG1vdmUgZGV2aWNlX29wcyBmcm9tIHBhcmVudCB0byBt ZGV2IGRldmljZQo+IC0gcmVtb3ZlIHRoZSB1bnVzZWQgTURFVl9JRF9WSE9TVAo+IAo+IENoYW5n ZXMgZnJvbSBWMToKPiAtIG1vdmUgdmlydGlvX21kZXYuYyB0byBkcml2ZXJzL3ZpcnRpbwo+IC0g c3RvcmUgY2xhc3NfaWQgaW4gbWRldl9kZXZpY2UgaW5zdGVhZCBvZiBtZGV2X3BhcmVudAo+IC0g c3RvcmUgZGV2aWNlX29wcyBpbiBtZGV2X2RldmljZSBpbnN0ZWFkIG9mIG1kZXZfcGFyZW50Cj4g LSByZW9yZGVyIHRoZSBwYXRjaCwgdnJpbmdoIGZpeCBjb21lcyBmaXJzdAo+IC0gcmVhbGx5IHNp bGVudCBjb21waWxpbmcgd2FybmluZ3MKPiAtIHJlYWxseSBzd2l0Y2ggdG8gdXNlIHUxNiBmb3Ig Y2xhc3NfaWQKPiAtIHVldmVudCBhbmQgbW9kcG9zdCBzdXBwb3J0IGZvciBtZGV2IGNsYXNzX2lk Cj4gLSB2cmFpb3VzIHR3ZWFrcyBwZXIgY29tbWVudHMgZnJvbSBQYXJhdgo+IAo+IENoYW5nZXMg ZnJvbSBSRkMtVjI6Cj4gLSBzaWxlbnQgY29tcGlsZSB3YXJuaW5ncyBvbiBzb21lIHNwZWNpZmlj IGNvbmZpZ3VyYXRpb24KPiAtIHVzZSB1MTYgaW5zdGVhZCB1OCBmb3IgY2xhc3MgaWQKPiAtIHJl c2V2ZSBNREVWX0lEX1ZIT1NUIGZvciBmdXR1cmUgdmhvc3QtbWRldiB3b3JrCj4gLSBpbnRyb2R1 Y2UgInZpcnRpbyIgdHlwZSBmb3IgbXZuZXQgYW5kIG1ha2UgInZob3N0IiB0eXBlIGZvciBmdXR1 cmUKPiAgIHdvcmsKPiAtIGFkZCBlbnRyaWVzIGluIE1BSU5UQUlORVIKPiAtIHR3ZWFrIGFuZCB0 eXBvcyBmaXhlcyBpbiBjb21taXQgbG9nCj4gCj4gQ2hhbmdlcyBmcm9tIFJGQy1WMToKPiAtIHJl bmFtZSBkZXZpY2UgaWQgdG8gY2xhc3MgaWQKPiAtIGFkZCBkb2NzIGZvciBjbGFzcyBpZCBhbmQg ZGV2aWNlIHNwZWNpZmljIG9wcyAoZGV2aWNlX29wcykKPiAtIHNwbGl0IGRldmljZV9vcHMgaW50 byBzZXBlcmF0ZSBoZWFkZXJzCj4gLSBkcm9wIHRoZSBtZGV2X3NldF9kbWFfb3BzKCkKPiAtIHVz ZSBkZXZpY2Vfb3BzIHRvIGltcGxlbWVudCB0aGUgdHJhbnNwb3J0IEFQSSwgdGhlbiBpdCdzIG5v dCBhIHBhcnQKPiAgIG9mIFVBUEkgYW55IG1vcmUKPiAtIHVzZSBHRlBfQVRPTUlDIGluIG12bmV0 IHNhbXBsZSBkZXZpY2UgYW5kIG90aGVyIHR3ZWFrcwo+IC0gc2V0X3ZyaW5nX2Jhc2UvZ2V0X3Zy aW5nX2Jhc2Ugc3VwcG9ydCBmb3IgbXZuZXQgZGV2aWNlCj4gCj4gSmFzb24gV2FuZyAoNik6Cj4g ICBtZGV2OiBjbGFzcyBpZCBzdXBwb3J0Cj4gICBtb2Rwb3N0OiBhZGQgc3VwcG9ydCBmb3IgbWRl diBjbGFzcyBpZAo+ICAgbWRldjogaW50cm9kdWNlIGRldmljZSBzcGVjaWZpYyBvcHMKPiAgIG1k ZXY6IGludHJvZHVjZSB2aXJ0aW8gZGV2aWNlIGFuZCBpdHMgZGV2aWNlIG9wcwo+ICAgdmlydGlv OiBpbnRyb2R1Y2UgYSBtZGV2IGJhc2VkIHRyYW5zcG9ydAo+ICAgZG9jczogc2FtcGxlIGRyaXZl ciB0byBkZW1vbnN0cmF0ZSBob3cgdG8gaW1wbGVtZW50IHZpcnRpby1tZGV2Cj4gICAgIGZyYW1l d29yawo+IAo+ICAuLi4vZHJpdmVyLWFwaS92ZmlvLW1lZGlhdGVkLWRldmljZS5yc3QgICAgICAg fCAgMzggKy0KPiAgTUFJTlRBSU5FUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICAzICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2t2bWd0LmMgICAgICAgICAgICAg IHwgIDE3ICstCj4gIGRyaXZlcnMvczM5MC9jaW8vdmZpb19jY3dfb3BzLmMgICAgICAgICAgICAg ICB8ICAxNyArLQo+ICBkcml2ZXJzL3MzOTAvY3J5cHRvL3ZmaW9fYXBfb3BzLmMgICAgICAgICAg ICAgfCAgMTMgKy0KPiAgZHJpdmVycy92ZmlvL21kZXYvbWRldl9jb3JlLmMgICAgICAgICAgICAg ICAgIHwgIDYwICsrCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfZHJpdmVyLmMgICAgICAgICAg ICAgICB8ICAyNSArCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oICAgICAgICAg ICAgICB8ICAgOCArCj4gIGRyaXZlcnMvdmZpby9tZGV2L3ZmaW9fbWRldi5jICAgICAgICAgICAg ICAgICB8ICA0NSArLQo+ICBkcml2ZXJzL3ZpcnRpby9LY29uZmlnICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTMgKwo+ICBkcml2ZXJzL3ZpcnRpby9NYWtlZmlsZSAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDEgKwo+ICBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jICAgICAgICAgICAg ICAgICAgfCA0MDYgKysrKysrKysrKysKPiAgaW5jbHVkZS9saW51eC9tZGV2LmggICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDU3ICstCj4gIGluY2x1ZGUvbGludXgvbWRldl92ZmlvX29wcy5o ICAgICAgICAgICAgICAgICB8ICA1MiArKwo+ICBpbmNsdWRlL2xpbnV4L21kZXZfdmlydGlvX29w cy5oICAgICAgICAgICAgICAgfCAxNDcgKysrKwo+ICBpbmNsdWRlL2xpbnV4L21vZF9kZXZpY2V0 YWJsZS5oICAgICAgICAgICAgICAgfCAgIDggKwo+ICBzYW1wbGVzL0tjb25maWcgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMTAgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9NYWtlZmls ZSAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tYm9jaHMu YyAgICAgICAgICAgICAgICAgICAgfCAgMTkgKy0KPiAgc2FtcGxlcy92ZmlvLW1kZXYvbWRweS5j ICAgICAgICAgICAgICAgICAgICAgIHwgIDE5ICstCj4gIHNhbXBsZXMvdmZpby1tZGV2L210dHku YyAgICAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tdm5l dC5jICAgICAgICAgICAgICAgICAgICAgfCA2ODYgKysrKysrKysrKysrKysrKysrCj4gIHNjcmlw dHMvbW9kL2RldmljZXRhYmxlLW9mZnNldHMuYyAgICAgICAgICAgICB8ICAgMyArCj4gIHNjcmlw dHMvbW9kL2ZpbGUyYWxpYXMuYyAgICAgICAgICAgICAgICAgICAgICB8ICAxMSArCj4gIDI0IGZp bGVzIGNoYW5nZWQsIDE1ODUgaW5zZXJ0aW9ucygrKSwgOTEgZGVsZXRpb25zKC0pCj4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jCj4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCBpbmNsdWRlL2xpbnV4L21kZXZfdmZpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS9saW51eC9tZGV2X3ZpcnRpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQg c2FtcGxlcy92ZmlvLW1kZXYvbXZuZXQuYwo+IAo+IC0tIAo+IDIuMTkuMQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0 CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0E9B6C5DF61 for ; Thu, 7 Nov 2019 09:09:50 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D35332178F for ; Thu, 7 Nov 2019 09:09:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D35332178F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 33D856F3B0; Thu, 7 Nov 2019 09:09:49 +0000 (UTC) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7C7756F3B6 for ; Thu, 7 Nov 2019 09:09:48 +0000 (UTC) Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id EDED2368E6 for ; Thu, 7 Nov 2019 09:09:47 +0000 (UTC) Received: by mail-qk1-f199.google.com with SMTP id a129so1460001qkg.22 for ; Thu, 07 Nov 2019 01:09:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Flogg0FK+CQGfPHRFZeP3Hwo24LOlQOVywkn1ujlXf4=; b=n7OzOkmQoPtiXarcXGfwI5dGL9bXvu5nelATs5hDkP0Uwal+s4C0fngHeLpMD9+U7H rPepb9QwQw1zbRjMgX+gfiPkqH7DHfK4Yr0hPigo36lIzb22iy1i5B5jpof/2YudTE79 x8c3gZSowTRfzT0GPNzsaxu6H/r9U/cAk28jkltKujeRF4D4gsbVh+/JuXfwHpcBibMD l09V7ZzOiwZnhpbm+OKdJ0lACA2NS9+BZ6TP31yIC29O+yoMa+ChdyQOWCjBEntOrkNS 0doMV2IcefVNi23WNpGRo5qiFf15f9WE6z/OZhttNNMkkf9MvSG5QZWg2f8m45sYwZQg 0xNQ== X-Gm-Message-State: APjAAAW3ixwVxzrMnvYHAnDusjdclixnunrLY+ikBUWKTZjDrOiJXJ2v MzYUI4oFRmLvYIE4MURfAU8S69j02K5zWhgqueD90/LdZycyGyiRmkCPCXcbO2aY+tQBtnjMjFG WeUfpnAt6mwF8BcXe0WSo/aaemlyV X-Received: by 2002:ae9:e215:: with SMTP id c21mr1729598qkc.476.1573117787089; Thu, 07 Nov 2019 01:09:47 -0800 (PST) X-Google-Smtp-Source: APXvYqxt9vUjMgK3NX2cXW69tzJNTFSyrme4IsKkuzbxqELG0BDja5w1on0uEApGYcoTl6XTjW6H9A== X-Received: by 2002:ae9:e215:: with SMTP id c21mr1729573qkc.476.1573117786770; Thu, 07 Nov 2019 01:09:46 -0800 (PST) Received: from redhat.com (bzq-79-178-12-128.red.bezeqint.net. [79.178.12.128]) by smtp.gmail.com with ESMTPSA id z72sm817960qka.115.2019.11.07.01.09.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Nov 2019 01:09:45 -0800 (PST) Date: Thu, 7 Nov 2019 04:09:35 -0500 From: "Michael S. Tsirkin" To: Jason Wang Subject: Re: [PATCH V10 0/6] mdev based hardware virtio offloading support Message-ID: <20191107040854-mutt-send-email-mst@kernel.org> References: <20191106133531.693-1-jasowang@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191106133531.693-1-jasowang@redhat.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: stefanha@redhat.com, christophe.de.dinechin@gmail.com, kvm@vger.kernel.org, airlied@linux.ie, heiko.carstens@de.ibm.com, kevin.tian@intel.com, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org, kwankhede@nvidia.com, rob.miller@broadcom.com, linux-s390@vger.kernel.org, sebott@linux.ibm.com, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, cunming.liang@intel.com, zhi.a.wang@intel.com, farman@linux.ibm.com, idos@mellanox.com, gor@linux.ibm.com, intel-gfx@lists.freedesktop.org, alex.williamson@redhat.com, xiao.w.wang@intel.com, freude@linux.ibm.com, parav@mellanox.com, zhihong.wang@intel.com, rodrigo.vivi@intel.com, intel-gvt-dev@lists.freedesktop.org, akrowiak@linux.ibm.com, oberpar@linux.ibm.com, tiwei.bie@intel.com, netdev@vger.kernel.org, cohuck@redhat.com, linux-kernel@vger.kernel.org, maxime.coquelin@redhat.com, lingshan.zhu@intel.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Message-ID: <20191107090935.XmeWN4B3Qvig9iko3GJ7eKsV3dtoZgc0QvilWSbryvQ@z> T24gV2VkLCBOb3YgMDYsIDIwMTkgYXQgMDk6MzU6MjVQTSArMDgwMCwgSmFzb24gV2FuZyB3cm90 ZToKPiBIaSBhbGw6Cj4gCj4gVGhlcmUgYXJlIGhhcmR3YXJlcyB0aGF0IGNhbiBkbyB2aXJ0aW8g ZGF0YXBhdGggb2ZmbG9hZGluZyB3aGlsZQo+IGhhdmluZyBpdHMgb3duIGNvbnRyb2wgcGF0aC4g VGhpcyBwYXRoIHRyaWVzIHRvIGltcGxlbWVudCBhIG1kZXYgYmFzZWQKPiB1bmlmaWVkIEFQSSB0 byBzdXBwb3J0IHVzaW5nIGtlcm5lbCB2aXJ0aW8gZHJpdmVyIHRvIGRyaXZlIHRob3NlCj4gZGV2 aWNlcy4gVGhpcyBpcyBkb25lIGJ5IGludHJvZHVjaW5nIGEgbmV3IG1kZXYgdHJhbnNwb3J0IGZv ciB2aXJ0aW8KPiAodmlydGlvX21kZXYpIGFuZCByZWdpc3RlciBpdHNlbGYgYXMgYSBuZXcga2lu ZCBvZiBtZGV2IGRyaXZlci4gVGhlbgo+IGl0IHByb3ZpZGVzIGEgdW5pZmllZCB3YXkgZm9yIGtl cm5lbCB2aXJ0aW8gZHJpdmVyIHRvIHRhbGsgd2l0aCBtZGV2Cj4gZGV2aWNlIGltcGxlbWVudGF0 aW9uLgo+IAo+IFRob3VnaCB0aGUgc2VyaWVzIG9ubHkgY29udGFpbnMga2VybmVsIGRyaXZlciBz dXBwb3J0LCB0aGUgZ29hbCBpcyB0bwo+IG1ha2UgdGhlIHRyYW5zcG9ydCBnZW5lcmljIGVub3Vn aCB0byBzdXBwb3J0IHVzZXJzcGFjZSBkcml2ZXJzLiBUaGlzCj4gbWVhbnMgdmhvc3QtbWRldlsx XSBjb3VsZCBiZSBidWlsdCBvbiB0b3AgYXMgd2VsbCBieSByZXN1aW5nIHRoZQo+IHRyYW5zcG9y dC4KPiAKPiBBIHNhbXBsZSBkcml2ZXIgaXMgYWxzbyBpbXBsZW1lbnRlZCB3aGljaCBzaW11bGF0 ZSBhIHZpcml0by1uZXQKPiBsb29wYmFjayBldGhlcm5ldCBkZXZpY2Ugb24gdG9wIG9mIHZyaW5n aCArIHdvcmtxdWV1ZS4gVGhpcyBjb3VsZCBiZQo+IHVzZWQgYXMgYSByZWZlcmVuY2UgaW1wbGVt ZW50YXRpb24gZm9yIHJlYWwgaGFyZHdhcmUgZHJpdmVyLgo+IAo+IEFsc28gYSByZWFsIElGQyBW RiBkcml2ZXIgd2FzIGFsc28gcG9zdGVkIGhlcmVbMl0gd2hpY2ggaXMgYSBnb29kCj4gcmVmZXJl bmNlIGZvciB2ZW5kb3JzIHdobyBpcyBpbnRlcmVzdGVkIGluIHRoZWlyIG93biB2aXJ0aW8gZGF0 YXBhdGgKPiBvZmZsb2FkaW5nIHByb2R1Y3QuCj4gCj4gQ29uc2lkZXIgbWRldiBmcmFtZXdvcmsg b25seSBzdXBwb3J0IFZGSU8gZGV2aWNlIGFuZCBkcml2ZXIgcmlnaHQgbm93LAo+IHRoaXMgc2Vy aWVzIGFsc28gZXh0ZW5kIGl0IHRvIHN1cHBvcnQgb3RoZXIgdHlwZXMuIFRoaXMgaXMgZG9uZQo+ IHRocm91Z2ggaW50cm9kdWNpbmcgY2xhc3MgaWQgdG8gdGhlIGRldmljZSBhbmQgcGFpcmluZyBp dCB3aXRoCj4gaWRfdGFsYmUgY2xhaW1lZCBieSB0aGUgZHJpdmVyLiBPbiB0b3AsIHRoaXMgc2Vy aXMgYWxzbyBkZWNvdXBsZQo+IGRldmljZSBzcGVjaWZpYyBvcHMgb3V0IG9mIHRoZSBjb21tb24g b25lcyBmb3IgaW1wbGVtZW50aW5nIGNsYXNzCj4gc3BlY2lmaWMgb3BlcmF0aW9ucyBvdmVyIG1k ZXYgYnVzLgo+IAo+IFBrdGdlbiB0ZXN0IHdhcyBkb25lIHdpdGggdmlyaXRvLW5ldCArIG12bmV0 IGxvb3AgYmFjayBkZXZpY2UuCgoKUGF0Y2hlcyAxLTU6CgpBY2tlZC1ieTogTWljaGFlbCBTLiBU c2lya2luIDxtc3RAcmVkaGF0LmNvbT4KClBhdGNoIDY6IEknZCBsaWtlIHRoZSBtb2R1bGUgdG8g YmUgcmVuYW1lZCB0byBtYWtlIGl0IG1vcmUKb2J2aW91cyB3aGF0IGl0IGRvZXMuIFdpdGggdGhh dDoKCkFja2VkLWJ5OiBNaWNoYWVsIFMuIFRzaXJraW4gPG1zdEByZWRoYXQuY29tPgoKPiBQbGVh c2UgcmV2aWV3Lgo+IAo+IFsxXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzQyNAo+ IFsyXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzIyNwo+IAo+IENoYW5nZXMgZnJv bSBWOToKPiAtIFR3ZWFrIHRoZSBoZWxwIHRleHQgZm9yIHZpcml0by1tZGV2IGtjb25maWcKPiAK PiBDaGFuZ2VzIGZyb20gVjg6Cj4gLSB0cnkgc2lsZW50IGNoZWNrcGF0Y2gsIHNvbWUgYXJlIHN0 aWxsIHRoZXJlIGJlY3Vhc2UgdGhleSB3ZXJlIGluaGVyaXRlZAo+ICAgZnJvbSB2aXJ0aW9fY29u ZmlnX29wcyB3aGljaCBuZWVkcyB0byBiZSByZXNvbHZlZCBpbiBhbiBpbmRlcGVuZGVudCBzZXJp ZXMKPiAtIHR3ZWFrIG9uIHRoZSBjb21tZW50IGFuZCBkb2MKPiAtIHJlbW92ZSBWSVJUSU9fTURF Vl9GX1ZFUlNJT05fMSBjb21wbGV0ZWx5Cj4gLSByZW5hbWUgQ09ORklHX1ZJUlRJT19NREVWX0RF VklDRSB0byBDT05GSUdfVklSVElPX01ERVYKPiAKPiBDaGFuZ2VzIGZyb20gVjc6Cj4gLSBkcm9w IHtzZXR8Z2V0fV9tZGV2X2ZlYXR1cmVzIGZvciB2aXJ0aW8KPiAtIHR5cG8gYW5kIGNvbW1lbnQg c3R5bGUgZml4ZXMKPiAKPiBDaGFuZ2VzIGZyb20gVjY6Cj4gLSByZW5hbWUgb3BzIGZpbGVzIGFu ZCBjb21waWxlIGd1YXJkCj4gCj4gQ2hhbmdlcyBmcm9tIFY1Ogo+IC0gdXNlIGRldl93YXJuKCkg aW5zdGVhZCBvZiBXQVJOKDEpIHdoZW4gY2xhc3MgaWQgaXMgbm90IHNldAo+IC0gdmFsaWRhdGUg aWRfdGFibGUgYmVmb3JlIHRyeWluZyB0byBkbyBtYXRjaGluZyBiZXR3ZWVuIGRldmljZSBhbmQK PiAgIGRyaXZlcgo+IC0gYWRkIHdpbGRjYXJkIGZvciBtb2Rwb3N0IHNjcmlwdAo+IC0gdXNlIHVu aXF1ZSBuYW1lIGZvciBpZF90YWJsZQo+IC0gbW92ZSBnZXRfbWRldl9mZWF0dXJlcygpIHRvIGJl IHRoZSBmaXJzdCBtZW1iZXIgb2YgdmlydGlvX2RldmljZV9vcHMKPiAgIGFuZCBtb3JlIGNvbW1l bnRzIGZvciBpdAo+IC0gdHlwbyBmaXhlcyBmb3IgdGhlIGNvbW1lbnRzIGFib3ZlIHZpcnRpb19t ZGV2X29wcwo+IAo+IENoYW5nZXMgZnJvbSBWNDoKPiAtIGtlZXAgbWRldl9zZXRfY2xhc3MoKSBm b3IgdGhlIGRldmljZSB0aGF0IGRvZXNuJ3QgdXNlIGRldmljZSBvcHMKPiAtIHVzZSB1bmlvbiBm b3IgZGV2aWNlIG9wcyBwb2ludGVyIGluIG1kZXZfZGV2aWNlCj4gLSBpbnRyb2R1Y2UgY2xhc3Mg c3BlY2lmaWMgaGVscGVyIGZvciBnZXR0aW5nIGlzIGRldmljZSBvcHMKPiAtIHVzZSBXQVJOX09O IGluc3RlYWQgb2YgQlVHX09OIGluIG1kZXZfc2V0X3ZpcnRpb19vcHMKPiAtIGV4cGxhaW4gZGV0 YWlscyBvZiBnZXRfbWRldl9mZWF0dXJlcygpIGFuZCBnZXRfdmVuZG9yX2lkKCkKPiAtIGRpc3Rp bmd1aXNoIHRoZSBvcHRpb25hbCB2aXJpdG8gZGV2aWNlIG9wcyBmcm9tIG1hbmRhdG9yeSBvbmVz IGFuZAo+ICAgbWFrZSBnZXRfZ2VuZXJhdGlvbigpIG9wdGlvbmFsCj4gLSByZW5hbWUgdmZpb19t ZGV2LmggdG8gdmZpb19tZGV2X29wcy5oLCByZW5hbWUgdmlyaXRvX21kZXYuaCB0bwo+ICAgdmly dGlvX21kZXZfb3BzLmgKPiAtIGRvbid0IGFidXNlIHZlcnNpb24gZmlsZWRzIGluIHZpcnRpb19t ZGV2IHN0cnVjdHVyZSwgdXNlIGZlYXR1cmVzCj4gICBpbnN0ZWFkCj4gLSBmaXggd2FybmluZyBk dXJpbmcgZGV2aWNlIHJlbW92ZQo+IC0gc3R5bGUgJiBkb2NzIHR3ZWFrcyBhbmQgdHlwbyBmaXhl cwo+IAo+IENoYW5nZXMgZnJvbSBWMzoKPiAtIGRvY3VtZW50IHRoYXQgY2xhc3MgaWQgKGRldmlj ZSBvcHMpIG11c3QgYmUgc3BlY2lmaWVkIGluIGNyZWF0ZSgpCj4gLSBhZGQgV0FSTigpIHdoZW4g dHJ5aW5nIHRvIHNldCBjbGFzc19pZCB3aGVuIGl0IGhhcyBhbHJlYWR5IHNldAo+IC0gYWRkIFdB Uk4oKSB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQgaW4gY3JlYXRlKCkgYW5kIGNvcnJl Y3RseQo+ICAgcmV0dXJuIGFuIGVycm9yIGluIHRoaXMgY2FzZQo+IC0gY29ycmVjdCB0aGUgcHJv dG90eXBlIG9mIG1kZXZfc2V0X2NsYXNzKCkgaW4gdGhlIGRvYwo+IC0gYWRkIGRvY3VtZW50aW9u IG9mIG1kZXZfc2V0X2NsYXNzKCkKPiAtIHJlbW92ZSB0aGUgdW5uZWNlc3NhcnkgImNsYXNzX2lk X2ZhaWwiIGxhYmVsIHdoZW4gY2xhc3MgaWQgaXMgbm90Cj4gICBzcGVjaWZpZWQgaW4gY3JlYXRl KCkKPiAtIGNvbnZlcnQgaWRfdGFibGUgaW4gdmZpb19tZGV2IHRvIGNvbnN0Cj4gLSBtb3ZlIG1k ZXZfc2V0X2NsYXNzIGFuZCBpdHMgZnJpZW5kcyBhZnRlciBtZGV2X3V1aWQoKQo+IC0gc3VxYXNo IHRoZSBwYXRjaCBvZiBidXMgdWV2ZW50IGludG8gcGF0Y2ggb2YgaW50cm9kdWNpbmcgY2xhc3Mg aWQKPiAtIHR3ZWFrIHRoZSB3b3JkcyBpbiB0aGUgZG9jcyBwZXIgQ29ybmVsaWEgc3VnZ2VzdGlv bgo+IC0gdGllIGNsYXNzX2lkIGFuZCBkZXZpY2Ugb3BzIHRocm91Z2ggY2xhc3Mgc3BlY2lmaWMg aW5pdGlhbGl6YXRpb24KPiAgIHJvdXRpbmUgbGlrZSBtZGV2X3NldF92ZmlvX29wcygpCj4gLSB0 eXBvcyBmaXhlcyBpbiB0aGUgZG9jcyBvZiB2aXJ0aW8tbWRldiBjYWxsYmFja3MKPiAtIGRvY3Vt ZW50IHRoZSB1c2FnZSBvZiB2aXJ0cXVldWVzIGluIHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2UK PiAtIHJlbW92ZSB0aGUgdXNlbGVzcyB2cXMgYXJyYXkgaW4gc3RydWN0IHZpcnRpb19tZGV2X2Rl dmljZQo+IC0gcmVuYW1lIE1ERVZfSURfWFhYIHRvIE1ERVZfQ0xBU1NfSURfWFhYCj4gCj4gQ2hh bmdlcyBmcm9tIFYyOgo+IC0gZmFpbCB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQKPiAt IGRyb3AgdGhlIHZyaW5naCBwYXRjaAo+IC0gbWF0Y2ggdGhlIGRvYyB0byB0aGUgY29kZQo+IC0g dHdlYWsgdGhlIGNvbW1pdCBsb2cKPiAtIG1vdmUgZGV2aWNlX29wcyBmcm9tIHBhcmVudCB0byBt ZGV2IGRldmljZQo+IC0gcmVtb3ZlIHRoZSB1bnVzZWQgTURFVl9JRF9WSE9TVAo+IAo+IENoYW5n ZXMgZnJvbSBWMToKPiAtIG1vdmUgdmlydGlvX21kZXYuYyB0byBkcml2ZXJzL3ZpcnRpbwo+IC0g c3RvcmUgY2xhc3NfaWQgaW4gbWRldl9kZXZpY2UgaW5zdGVhZCBvZiBtZGV2X3BhcmVudAo+IC0g c3RvcmUgZGV2aWNlX29wcyBpbiBtZGV2X2RldmljZSBpbnN0ZWFkIG9mIG1kZXZfcGFyZW50Cj4g LSByZW9yZGVyIHRoZSBwYXRjaCwgdnJpbmdoIGZpeCBjb21lcyBmaXJzdAo+IC0gcmVhbGx5IHNp bGVudCBjb21waWxpbmcgd2FybmluZ3MKPiAtIHJlYWxseSBzd2l0Y2ggdG8gdXNlIHUxNiBmb3Ig Y2xhc3NfaWQKPiAtIHVldmVudCBhbmQgbW9kcG9zdCBzdXBwb3J0IGZvciBtZGV2IGNsYXNzX2lk Cj4gLSB2cmFpb3VzIHR3ZWFrcyBwZXIgY29tbWVudHMgZnJvbSBQYXJhdgo+IAo+IENoYW5nZXMg ZnJvbSBSRkMtVjI6Cj4gLSBzaWxlbnQgY29tcGlsZSB3YXJuaW5ncyBvbiBzb21lIHNwZWNpZmlj IGNvbmZpZ3VyYXRpb24KPiAtIHVzZSB1MTYgaW5zdGVhZCB1OCBmb3IgY2xhc3MgaWQKPiAtIHJl c2V2ZSBNREVWX0lEX1ZIT1NUIGZvciBmdXR1cmUgdmhvc3QtbWRldiB3b3JrCj4gLSBpbnRyb2R1 Y2UgInZpcnRpbyIgdHlwZSBmb3IgbXZuZXQgYW5kIG1ha2UgInZob3N0IiB0eXBlIGZvciBmdXR1 cmUKPiAgIHdvcmsKPiAtIGFkZCBlbnRyaWVzIGluIE1BSU5UQUlORVIKPiAtIHR3ZWFrIGFuZCB0 eXBvcyBmaXhlcyBpbiBjb21taXQgbG9nCj4gCj4gQ2hhbmdlcyBmcm9tIFJGQy1WMToKPiAtIHJl bmFtZSBkZXZpY2UgaWQgdG8gY2xhc3MgaWQKPiAtIGFkZCBkb2NzIGZvciBjbGFzcyBpZCBhbmQg ZGV2aWNlIHNwZWNpZmljIG9wcyAoZGV2aWNlX29wcykKPiAtIHNwbGl0IGRldmljZV9vcHMgaW50 byBzZXBlcmF0ZSBoZWFkZXJzCj4gLSBkcm9wIHRoZSBtZGV2X3NldF9kbWFfb3BzKCkKPiAtIHVz ZSBkZXZpY2Vfb3BzIHRvIGltcGxlbWVudCB0aGUgdHJhbnNwb3J0IEFQSSwgdGhlbiBpdCdzIG5v dCBhIHBhcnQKPiAgIG9mIFVBUEkgYW55IG1vcmUKPiAtIHVzZSBHRlBfQVRPTUlDIGluIG12bmV0 IHNhbXBsZSBkZXZpY2UgYW5kIG90aGVyIHR3ZWFrcwo+IC0gc2V0X3ZyaW5nX2Jhc2UvZ2V0X3Zy aW5nX2Jhc2Ugc3VwcG9ydCBmb3IgbXZuZXQgZGV2aWNlCj4gCj4gSmFzb24gV2FuZyAoNik6Cj4g ICBtZGV2OiBjbGFzcyBpZCBzdXBwb3J0Cj4gICBtb2Rwb3N0OiBhZGQgc3VwcG9ydCBmb3IgbWRl diBjbGFzcyBpZAo+ICAgbWRldjogaW50cm9kdWNlIGRldmljZSBzcGVjaWZpYyBvcHMKPiAgIG1k ZXY6IGludHJvZHVjZSB2aXJ0aW8gZGV2aWNlIGFuZCBpdHMgZGV2aWNlIG9wcwo+ICAgdmlydGlv OiBpbnRyb2R1Y2UgYSBtZGV2IGJhc2VkIHRyYW5zcG9ydAo+ICAgZG9jczogc2FtcGxlIGRyaXZl ciB0byBkZW1vbnN0cmF0ZSBob3cgdG8gaW1wbGVtZW50IHZpcnRpby1tZGV2Cj4gICAgIGZyYW1l d29yawo+IAo+ICAuLi4vZHJpdmVyLWFwaS92ZmlvLW1lZGlhdGVkLWRldmljZS5yc3QgICAgICAg fCAgMzggKy0KPiAgTUFJTlRBSU5FUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICAzICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2t2bWd0LmMgICAgICAgICAgICAg IHwgIDE3ICstCj4gIGRyaXZlcnMvczM5MC9jaW8vdmZpb19jY3dfb3BzLmMgICAgICAgICAgICAg ICB8ICAxNyArLQo+ICBkcml2ZXJzL3MzOTAvY3J5cHRvL3ZmaW9fYXBfb3BzLmMgICAgICAgICAg ICAgfCAgMTMgKy0KPiAgZHJpdmVycy92ZmlvL21kZXYvbWRldl9jb3JlLmMgICAgICAgICAgICAg ICAgIHwgIDYwICsrCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfZHJpdmVyLmMgICAgICAgICAg ICAgICB8ICAyNSArCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oICAgICAgICAg ICAgICB8ICAgOCArCj4gIGRyaXZlcnMvdmZpby9tZGV2L3ZmaW9fbWRldi5jICAgICAgICAgICAg ICAgICB8ICA0NSArLQo+ICBkcml2ZXJzL3ZpcnRpby9LY29uZmlnICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTMgKwo+ICBkcml2ZXJzL3ZpcnRpby9NYWtlZmlsZSAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDEgKwo+ICBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jICAgICAgICAgICAg ICAgICAgfCA0MDYgKysrKysrKysrKysKPiAgaW5jbHVkZS9saW51eC9tZGV2LmggICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDU3ICstCj4gIGluY2x1ZGUvbGludXgvbWRldl92ZmlvX29wcy5o ICAgICAgICAgICAgICAgICB8ICA1MiArKwo+ICBpbmNsdWRlL2xpbnV4L21kZXZfdmlydGlvX29w cy5oICAgICAgICAgICAgICAgfCAxNDcgKysrKwo+ICBpbmNsdWRlL2xpbnV4L21vZF9kZXZpY2V0 YWJsZS5oICAgICAgICAgICAgICAgfCAgIDggKwo+ICBzYW1wbGVzL0tjb25maWcgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMTAgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9NYWtlZmls ZSAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tYm9jaHMu YyAgICAgICAgICAgICAgICAgICAgfCAgMTkgKy0KPiAgc2FtcGxlcy92ZmlvLW1kZXYvbWRweS5j ICAgICAgICAgICAgICAgICAgICAgIHwgIDE5ICstCj4gIHNhbXBsZXMvdmZpby1tZGV2L210dHku YyAgICAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tdm5l dC5jICAgICAgICAgICAgICAgICAgICAgfCA2ODYgKysrKysrKysrKysrKysrKysrCj4gIHNjcmlw dHMvbW9kL2RldmljZXRhYmxlLW9mZnNldHMuYyAgICAgICAgICAgICB8ICAgMyArCj4gIHNjcmlw dHMvbW9kL2ZpbGUyYWxpYXMuYyAgICAgICAgICAgICAgICAgICAgICB8ICAxMSArCj4gIDI0IGZp bGVzIGNoYW5nZWQsIDE1ODUgaW5zZXJ0aW9ucygrKSwgOTEgZGVsZXRpb25zKC0pCj4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jCj4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCBpbmNsdWRlL2xpbnV4L21kZXZfdmZpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS9saW51eC9tZGV2X3ZpcnRpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQg c2FtcGxlcy92ZmlvLW1kZXYvbXZuZXQuYwo+IAo+IC0tIAo+IDIuMTkuMQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0 CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D8864C5DF61 for ; Thu, 7 Nov 2019 09:09:51 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B6FC52178F for ; Thu, 7 Nov 2019 09:09:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B6FC52178F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id AD13F6F3B6; Thu, 7 Nov 2019 09:09:49 +0000 (UTC) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6A43E6F3B0 for ; Thu, 7 Nov 2019 09:09:48 +0000 (UTC) Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E874E5AFE0 for ; Thu, 7 Nov 2019 09:09:47 +0000 (UTC) Received: by mail-qk1-f200.google.com with SMTP id z26so1491532qkj.11 for ; Thu, 07 Nov 2019 01:09:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Flogg0FK+CQGfPHRFZeP3Hwo24LOlQOVywkn1ujlXf4=; b=psJYdyKV60jvteQqjnIa8PFwq1mvDV+iVwn08WMC7vnl/jsstRYAgR/za0u/dyA3ir /RL15OPkzdtb/1v3Qs6G5RVD3u+JuJNy01fmEn20iKG18uolYOmmfqRAC9PabYuiTnH+ AZ+UzdPO53l0pSgQz1EUcgWUDfh4UKXPv+maznt6BIRBEv54pWI+8IC/aj9/gvWZZn5g LqXDsvHss9yJ8CY48eD8OOY+YpsaQNrlUlvUn0Q3XvVxJkAZLirsqtQYRsOCRQltAdDl DHWZz7CAlnpB34fMs833OoRclZa8LaYcNHO5eDgzrBdl1GTMZnRbVAaCSKon2ayvg1G/ 1X/A== X-Gm-Message-State: APjAAAXqQTXdyUXTXwp2yFbmY3ENniqjkscVC+RPaeOxcnM89GhmO88R bMb01vdEetc8cApBbUbyoS0iDbPr4QMG6DEzXmElJKqUPaaqVfRQvHGC9cnCLxIJ+D43XzfOhQB mLs1f3iaz3XTN6o636iX1x0TQAFVS X-Received: by 2002:ae9:e215:: with SMTP id c21mr1729615qkc.476.1573117787091; Thu, 07 Nov 2019 01:09:47 -0800 (PST) X-Google-Smtp-Source: APXvYqxt9vUjMgK3NX2cXW69tzJNTFSyrme4IsKkuzbxqELG0BDja5w1on0uEApGYcoTl6XTjW6H9A== X-Received: by 2002:ae9:e215:: with SMTP id c21mr1729573qkc.476.1573117786770; Thu, 07 Nov 2019 01:09:46 -0800 (PST) Received: from redhat.com (bzq-79-178-12-128.red.bezeqint.net. [79.178.12.128]) by smtp.gmail.com with ESMTPSA id z72sm817960qka.115.2019.11.07.01.09.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Nov 2019 01:09:45 -0800 (PST) Date: Thu, 7 Nov 2019 04:09:35 -0500 From: "Michael S. Tsirkin" To: Jason Wang Message-ID: <20191107040854-mutt-send-email-mst@kernel.org> References: <20191106133531.693-1-jasowang@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191106133531.693-1-jasowang@redhat.com> Subject: Re: [Intel-gfx] [PATCH V10 0/6] mdev based hardware virtio offloading support X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: stefanha@redhat.com, christophe.de.dinechin@gmail.com, kvm@vger.kernel.org, airlied@linux.ie, heiko.carstens@de.ibm.com, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org, kwankhede@nvidia.com, rob.miller@broadcom.com, linux-s390@vger.kernel.org, sebott@linux.ibm.com, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, cunming.liang@intel.com, farman@linux.ibm.com, idos@mellanox.com, gor@linux.ibm.com, intel-gfx@lists.freedesktop.org, xiao.w.wang@intel.com, freude@linux.ibm.com, parav@mellanox.com, zhihong.wang@intel.com, intel-gvt-dev@lists.freedesktop.org, akrowiak@linux.ibm.com, oberpar@linux.ibm.com, tiwei.bie@intel.com, netdev@vger.kernel.org, cohuck@redhat.com, linux-kernel@vger.kernel.org, maxime.coquelin@redhat.com, lingshan.zhu@intel.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191107090935.TnTGaIVIxKZLdppDi4MWPXXNVhGOFxie4mHfhUH_Lg4@z> T24gV2VkLCBOb3YgMDYsIDIwMTkgYXQgMDk6MzU6MjVQTSArMDgwMCwgSmFzb24gV2FuZyB3cm90 ZToKPiBIaSBhbGw6Cj4gCj4gVGhlcmUgYXJlIGhhcmR3YXJlcyB0aGF0IGNhbiBkbyB2aXJ0aW8g ZGF0YXBhdGggb2ZmbG9hZGluZyB3aGlsZQo+IGhhdmluZyBpdHMgb3duIGNvbnRyb2wgcGF0aC4g VGhpcyBwYXRoIHRyaWVzIHRvIGltcGxlbWVudCBhIG1kZXYgYmFzZWQKPiB1bmlmaWVkIEFQSSB0 byBzdXBwb3J0IHVzaW5nIGtlcm5lbCB2aXJ0aW8gZHJpdmVyIHRvIGRyaXZlIHRob3NlCj4gZGV2 aWNlcy4gVGhpcyBpcyBkb25lIGJ5IGludHJvZHVjaW5nIGEgbmV3IG1kZXYgdHJhbnNwb3J0IGZv ciB2aXJ0aW8KPiAodmlydGlvX21kZXYpIGFuZCByZWdpc3RlciBpdHNlbGYgYXMgYSBuZXcga2lu ZCBvZiBtZGV2IGRyaXZlci4gVGhlbgo+IGl0IHByb3ZpZGVzIGEgdW5pZmllZCB3YXkgZm9yIGtl cm5lbCB2aXJ0aW8gZHJpdmVyIHRvIHRhbGsgd2l0aCBtZGV2Cj4gZGV2aWNlIGltcGxlbWVudGF0 aW9uLgo+IAo+IFRob3VnaCB0aGUgc2VyaWVzIG9ubHkgY29udGFpbnMga2VybmVsIGRyaXZlciBz dXBwb3J0LCB0aGUgZ29hbCBpcyB0bwo+IG1ha2UgdGhlIHRyYW5zcG9ydCBnZW5lcmljIGVub3Vn aCB0byBzdXBwb3J0IHVzZXJzcGFjZSBkcml2ZXJzLiBUaGlzCj4gbWVhbnMgdmhvc3QtbWRldlsx XSBjb3VsZCBiZSBidWlsdCBvbiB0b3AgYXMgd2VsbCBieSByZXN1aW5nIHRoZQo+IHRyYW5zcG9y dC4KPiAKPiBBIHNhbXBsZSBkcml2ZXIgaXMgYWxzbyBpbXBsZW1lbnRlZCB3aGljaCBzaW11bGF0 ZSBhIHZpcml0by1uZXQKPiBsb29wYmFjayBldGhlcm5ldCBkZXZpY2Ugb24gdG9wIG9mIHZyaW5n aCArIHdvcmtxdWV1ZS4gVGhpcyBjb3VsZCBiZQo+IHVzZWQgYXMgYSByZWZlcmVuY2UgaW1wbGVt ZW50YXRpb24gZm9yIHJlYWwgaGFyZHdhcmUgZHJpdmVyLgo+IAo+IEFsc28gYSByZWFsIElGQyBW RiBkcml2ZXIgd2FzIGFsc28gcG9zdGVkIGhlcmVbMl0gd2hpY2ggaXMgYSBnb29kCj4gcmVmZXJl bmNlIGZvciB2ZW5kb3JzIHdobyBpcyBpbnRlcmVzdGVkIGluIHRoZWlyIG93biB2aXJ0aW8gZGF0 YXBhdGgKPiBvZmZsb2FkaW5nIHByb2R1Y3QuCj4gCj4gQ29uc2lkZXIgbWRldiBmcmFtZXdvcmsg b25seSBzdXBwb3J0IFZGSU8gZGV2aWNlIGFuZCBkcml2ZXIgcmlnaHQgbm93LAo+IHRoaXMgc2Vy aWVzIGFsc28gZXh0ZW5kIGl0IHRvIHN1cHBvcnQgb3RoZXIgdHlwZXMuIFRoaXMgaXMgZG9uZQo+ IHRocm91Z2ggaW50cm9kdWNpbmcgY2xhc3MgaWQgdG8gdGhlIGRldmljZSBhbmQgcGFpcmluZyBp dCB3aXRoCj4gaWRfdGFsYmUgY2xhaW1lZCBieSB0aGUgZHJpdmVyLiBPbiB0b3AsIHRoaXMgc2Vy aXMgYWxzbyBkZWNvdXBsZQo+IGRldmljZSBzcGVjaWZpYyBvcHMgb3V0IG9mIHRoZSBjb21tb24g b25lcyBmb3IgaW1wbGVtZW50aW5nIGNsYXNzCj4gc3BlY2lmaWMgb3BlcmF0aW9ucyBvdmVyIG1k ZXYgYnVzLgo+IAo+IFBrdGdlbiB0ZXN0IHdhcyBkb25lIHdpdGggdmlyaXRvLW5ldCArIG12bmV0 IGxvb3AgYmFjayBkZXZpY2UuCgoKUGF0Y2hlcyAxLTU6CgpBY2tlZC1ieTogTWljaGFlbCBTLiBU c2lya2luIDxtc3RAcmVkaGF0LmNvbT4KClBhdGNoIDY6IEknZCBsaWtlIHRoZSBtb2R1bGUgdG8g YmUgcmVuYW1lZCB0byBtYWtlIGl0IG1vcmUKb2J2aW91cyB3aGF0IGl0IGRvZXMuIFdpdGggdGhh dDoKCkFja2VkLWJ5OiBNaWNoYWVsIFMuIFRzaXJraW4gPG1zdEByZWRoYXQuY29tPgoKPiBQbGVh c2UgcmV2aWV3Lgo+IAo+IFsxXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzQyNAo+ IFsyXSBodHRwczovL2xrbWwub3JnL2xrbWwvMjAxOS8xMS81LzIyNwo+IAo+IENoYW5nZXMgZnJv bSBWOToKPiAtIFR3ZWFrIHRoZSBoZWxwIHRleHQgZm9yIHZpcml0by1tZGV2IGtjb25maWcKPiAK PiBDaGFuZ2VzIGZyb20gVjg6Cj4gLSB0cnkgc2lsZW50IGNoZWNrcGF0Y2gsIHNvbWUgYXJlIHN0 aWxsIHRoZXJlIGJlY3Vhc2UgdGhleSB3ZXJlIGluaGVyaXRlZAo+ICAgZnJvbSB2aXJ0aW9fY29u ZmlnX29wcyB3aGljaCBuZWVkcyB0byBiZSByZXNvbHZlZCBpbiBhbiBpbmRlcGVuZGVudCBzZXJp ZXMKPiAtIHR3ZWFrIG9uIHRoZSBjb21tZW50IGFuZCBkb2MKPiAtIHJlbW92ZSBWSVJUSU9fTURF Vl9GX1ZFUlNJT05fMSBjb21wbGV0ZWx5Cj4gLSByZW5hbWUgQ09ORklHX1ZJUlRJT19NREVWX0RF VklDRSB0byBDT05GSUdfVklSVElPX01ERVYKPiAKPiBDaGFuZ2VzIGZyb20gVjc6Cj4gLSBkcm9w IHtzZXR8Z2V0fV9tZGV2X2ZlYXR1cmVzIGZvciB2aXJ0aW8KPiAtIHR5cG8gYW5kIGNvbW1lbnQg c3R5bGUgZml4ZXMKPiAKPiBDaGFuZ2VzIGZyb20gVjY6Cj4gLSByZW5hbWUgb3BzIGZpbGVzIGFu ZCBjb21waWxlIGd1YXJkCj4gCj4gQ2hhbmdlcyBmcm9tIFY1Ogo+IC0gdXNlIGRldl93YXJuKCkg aW5zdGVhZCBvZiBXQVJOKDEpIHdoZW4gY2xhc3MgaWQgaXMgbm90IHNldAo+IC0gdmFsaWRhdGUg aWRfdGFibGUgYmVmb3JlIHRyeWluZyB0byBkbyBtYXRjaGluZyBiZXR3ZWVuIGRldmljZSBhbmQK PiAgIGRyaXZlcgo+IC0gYWRkIHdpbGRjYXJkIGZvciBtb2Rwb3N0IHNjcmlwdAo+IC0gdXNlIHVu aXF1ZSBuYW1lIGZvciBpZF90YWJsZQo+IC0gbW92ZSBnZXRfbWRldl9mZWF0dXJlcygpIHRvIGJl IHRoZSBmaXJzdCBtZW1iZXIgb2YgdmlydGlvX2RldmljZV9vcHMKPiAgIGFuZCBtb3JlIGNvbW1l bnRzIGZvciBpdAo+IC0gdHlwbyBmaXhlcyBmb3IgdGhlIGNvbW1lbnRzIGFib3ZlIHZpcnRpb19t ZGV2X29wcwo+IAo+IENoYW5nZXMgZnJvbSBWNDoKPiAtIGtlZXAgbWRldl9zZXRfY2xhc3MoKSBm b3IgdGhlIGRldmljZSB0aGF0IGRvZXNuJ3QgdXNlIGRldmljZSBvcHMKPiAtIHVzZSB1bmlvbiBm b3IgZGV2aWNlIG9wcyBwb2ludGVyIGluIG1kZXZfZGV2aWNlCj4gLSBpbnRyb2R1Y2UgY2xhc3Mg c3BlY2lmaWMgaGVscGVyIGZvciBnZXR0aW5nIGlzIGRldmljZSBvcHMKPiAtIHVzZSBXQVJOX09O IGluc3RlYWQgb2YgQlVHX09OIGluIG1kZXZfc2V0X3ZpcnRpb19vcHMKPiAtIGV4cGxhaW4gZGV0 YWlscyBvZiBnZXRfbWRldl9mZWF0dXJlcygpIGFuZCBnZXRfdmVuZG9yX2lkKCkKPiAtIGRpc3Rp bmd1aXNoIHRoZSBvcHRpb25hbCB2aXJpdG8gZGV2aWNlIG9wcyBmcm9tIG1hbmRhdG9yeSBvbmVz IGFuZAo+ICAgbWFrZSBnZXRfZ2VuZXJhdGlvbigpIG9wdGlvbmFsCj4gLSByZW5hbWUgdmZpb19t ZGV2LmggdG8gdmZpb19tZGV2X29wcy5oLCByZW5hbWUgdmlyaXRvX21kZXYuaCB0bwo+ICAgdmly dGlvX21kZXZfb3BzLmgKPiAtIGRvbid0IGFidXNlIHZlcnNpb24gZmlsZWRzIGluIHZpcnRpb19t ZGV2IHN0cnVjdHVyZSwgdXNlIGZlYXR1cmVzCj4gICBpbnN0ZWFkCj4gLSBmaXggd2FybmluZyBk dXJpbmcgZGV2aWNlIHJlbW92ZQo+IC0gc3R5bGUgJiBkb2NzIHR3ZWFrcyBhbmQgdHlwbyBmaXhl cwo+IAo+IENoYW5nZXMgZnJvbSBWMzoKPiAtIGRvY3VtZW50IHRoYXQgY2xhc3MgaWQgKGRldmlj ZSBvcHMpIG11c3QgYmUgc3BlY2lmaWVkIGluIGNyZWF0ZSgpCj4gLSBhZGQgV0FSTigpIHdoZW4g dHJ5aW5nIHRvIHNldCBjbGFzc19pZCB3aGVuIGl0IGhhcyBhbHJlYWR5IHNldAo+IC0gYWRkIFdB Uk4oKSB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQgaW4gY3JlYXRlKCkgYW5kIGNvcnJl Y3RseQo+ICAgcmV0dXJuIGFuIGVycm9yIGluIHRoaXMgY2FzZQo+IC0gY29ycmVjdCB0aGUgcHJv dG90eXBlIG9mIG1kZXZfc2V0X2NsYXNzKCkgaW4gdGhlIGRvYwo+IC0gYWRkIGRvY3VtZW50aW9u IG9mIG1kZXZfc2V0X2NsYXNzKCkKPiAtIHJlbW92ZSB0aGUgdW5uZWNlc3NhcnkgImNsYXNzX2lk X2ZhaWwiIGxhYmVsIHdoZW4gY2xhc3MgaWQgaXMgbm90Cj4gICBzcGVjaWZpZWQgaW4gY3JlYXRl KCkKPiAtIGNvbnZlcnQgaWRfdGFibGUgaW4gdmZpb19tZGV2IHRvIGNvbnN0Cj4gLSBtb3ZlIG1k ZXZfc2V0X2NsYXNzIGFuZCBpdHMgZnJpZW5kcyBhZnRlciBtZGV2X3V1aWQoKQo+IC0gc3VxYXNo IHRoZSBwYXRjaCBvZiBidXMgdWV2ZW50IGludG8gcGF0Y2ggb2YgaW50cm9kdWNpbmcgY2xhc3Mg aWQKPiAtIHR3ZWFrIHRoZSB3b3JkcyBpbiB0aGUgZG9jcyBwZXIgQ29ybmVsaWEgc3VnZ2VzdGlv bgo+IC0gdGllIGNsYXNzX2lkIGFuZCBkZXZpY2Ugb3BzIHRocm91Z2ggY2xhc3Mgc3BlY2lmaWMg aW5pdGlhbGl6YXRpb24KPiAgIHJvdXRpbmUgbGlrZSBtZGV2X3NldF92ZmlvX29wcygpCj4gLSB0 eXBvcyBmaXhlcyBpbiB0aGUgZG9jcyBvZiB2aXJ0aW8tbWRldiBjYWxsYmFja3MKPiAtIGRvY3Vt ZW50IHRoZSB1c2FnZSBvZiB2aXJ0cXVldWVzIGluIHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2UK PiAtIHJlbW92ZSB0aGUgdXNlbGVzcyB2cXMgYXJyYXkgaW4gc3RydWN0IHZpcnRpb19tZGV2X2Rl dmljZQo+IC0gcmVuYW1lIE1ERVZfSURfWFhYIHRvIE1ERVZfQ0xBU1NfSURfWFhYCj4gCj4gQ2hh bmdlcyBmcm9tIFYyOgo+IC0gZmFpbCB3aGVuIGNsYXNzX2lkIGlzIG5vdCBzcGVjaWZpZWQKPiAt IGRyb3AgdGhlIHZyaW5naCBwYXRjaAo+IC0gbWF0Y2ggdGhlIGRvYyB0byB0aGUgY29kZQo+IC0g dHdlYWsgdGhlIGNvbW1pdCBsb2cKPiAtIG1vdmUgZGV2aWNlX29wcyBmcm9tIHBhcmVudCB0byBt ZGV2IGRldmljZQo+IC0gcmVtb3ZlIHRoZSB1bnVzZWQgTURFVl9JRF9WSE9TVAo+IAo+IENoYW5n ZXMgZnJvbSBWMToKPiAtIG1vdmUgdmlydGlvX21kZXYuYyB0byBkcml2ZXJzL3ZpcnRpbwo+IC0g c3RvcmUgY2xhc3NfaWQgaW4gbWRldl9kZXZpY2UgaW5zdGVhZCBvZiBtZGV2X3BhcmVudAo+IC0g c3RvcmUgZGV2aWNlX29wcyBpbiBtZGV2X2RldmljZSBpbnN0ZWFkIG9mIG1kZXZfcGFyZW50Cj4g LSByZW9yZGVyIHRoZSBwYXRjaCwgdnJpbmdoIGZpeCBjb21lcyBmaXJzdAo+IC0gcmVhbGx5IHNp bGVudCBjb21waWxpbmcgd2FybmluZ3MKPiAtIHJlYWxseSBzd2l0Y2ggdG8gdXNlIHUxNiBmb3Ig Y2xhc3NfaWQKPiAtIHVldmVudCBhbmQgbW9kcG9zdCBzdXBwb3J0IGZvciBtZGV2IGNsYXNzX2lk Cj4gLSB2cmFpb3VzIHR3ZWFrcyBwZXIgY29tbWVudHMgZnJvbSBQYXJhdgo+IAo+IENoYW5nZXMg ZnJvbSBSRkMtVjI6Cj4gLSBzaWxlbnQgY29tcGlsZSB3YXJuaW5ncyBvbiBzb21lIHNwZWNpZmlj IGNvbmZpZ3VyYXRpb24KPiAtIHVzZSB1MTYgaW5zdGVhZCB1OCBmb3IgY2xhc3MgaWQKPiAtIHJl c2V2ZSBNREVWX0lEX1ZIT1NUIGZvciBmdXR1cmUgdmhvc3QtbWRldiB3b3JrCj4gLSBpbnRyb2R1 Y2UgInZpcnRpbyIgdHlwZSBmb3IgbXZuZXQgYW5kIG1ha2UgInZob3N0IiB0eXBlIGZvciBmdXR1 cmUKPiAgIHdvcmsKPiAtIGFkZCBlbnRyaWVzIGluIE1BSU5UQUlORVIKPiAtIHR3ZWFrIGFuZCB0 eXBvcyBmaXhlcyBpbiBjb21taXQgbG9nCj4gCj4gQ2hhbmdlcyBmcm9tIFJGQy1WMToKPiAtIHJl bmFtZSBkZXZpY2UgaWQgdG8gY2xhc3MgaWQKPiAtIGFkZCBkb2NzIGZvciBjbGFzcyBpZCBhbmQg ZGV2aWNlIHNwZWNpZmljIG9wcyAoZGV2aWNlX29wcykKPiAtIHNwbGl0IGRldmljZV9vcHMgaW50 byBzZXBlcmF0ZSBoZWFkZXJzCj4gLSBkcm9wIHRoZSBtZGV2X3NldF9kbWFfb3BzKCkKPiAtIHVz ZSBkZXZpY2Vfb3BzIHRvIGltcGxlbWVudCB0aGUgdHJhbnNwb3J0IEFQSSwgdGhlbiBpdCdzIG5v dCBhIHBhcnQKPiAgIG9mIFVBUEkgYW55IG1vcmUKPiAtIHVzZSBHRlBfQVRPTUlDIGluIG12bmV0 IHNhbXBsZSBkZXZpY2UgYW5kIG90aGVyIHR3ZWFrcwo+IC0gc2V0X3ZyaW5nX2Jhc2UvZ2V0X3Zy aW5nX2Jhc2Ugc3VwcG9ydCBmb3IgbXZuZXQgZGV2aWNlCj4gCj4gSmFzb24gV2FuZyAoNik6Cj4g ICBtZGV2OiBjbGFzcyBpZCBzdXBwb3J0Cj4gICBtb2Rwb3N0OiBhZGQgc3VwcG9ydCBmb3IgbWRl diBjbGFzcyBpZAo+ICAgbWRldjogaW50cm9kdWNlIGRldmljZSBzcGVjaWZpYyBvcHMKPiAgIG1k ZXY6IGludHJvZHVjZSB2aXJ0aW8gZGV2aWNlIGFuZCBpdHMgZGV2aWNlIG9wcwo+ICAgdmlydGlv OiBpbnRyb2R1Y2UgYSBtZGV2IGJhc2VkIHRyYW5zcG9ydAo+ICAgZG9jczogc2FtcGxlIGRyaXZl ciB0byBkZW1vbnN0cmF0ZSBob3cgdG8gaW1wbGVtZW50IHZpcnRpby1tZGV2Cj4gICAgIGZyYW1l d29yawo+IAo+ICAuLi4vZHJpdmVyLWFwaS92ZmlvLW1lZGlhdGVkLWRldmljZS5yc3QgICAgICAg fCAgMzggKy0KPiAgTUFJTlRBSU5FUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICAzICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2t2bWd0LmMgICAgICAgICAgICAg IHwgIDE3ICstCj4gIGRyaXZlcnMvczM5MC9jaW8vdmZpb19jY3dfb3BzLmMgICAgICAgICAgICAg ICB8ICAxNyArLQo+ICBkcml2ZXJzL3MzOTAvY3J5cHRvL3ZmaW9fYXBfb3BzLmMgICAgICAgICAg ICAgfCAgMTMgKy0KPiAgZHJpdmVycy92ZmlvL21kZXYvbWRldl9jb3JlLmMgICAgICAgICAgICAg ICAgIHwgIDYwICsrCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfZHJpdmVyLmMgICAgICAgICAg ICAgICB8ICAyNSArCj4gIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oICAgICAgICAg ICAgICB8ICAgOCArCj4gIGRyaXZlcnMvdmZpby9tZGV2L3ZmaW9fbWRldi5jICAgICAgICAgICAg ICAgICB8ICA0NSArLQo+ICBkcml2ZXJzL3ZpcnRpby9LY29uZmlnICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTMgKwo+ICBkcml2ZXJzL3ZpcnRpby9NYWtlZmlsZSAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDEgKwo+ICBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jICAgICAgICAgICAg ICAgICAgfCA0MDYgKysrKysrKysrKysKPiAgaW5jbHVkZS9saW51eC9tZGV2LmggICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDU3ICstCj4gIGluY2x1ZGUvbGludXgvbWRldl92ZmlvX29wcy5o ICAgICAgICAgICAgICAgICB8ICA1MiArKwo+ICBpbmNsdWRlL2xpbnV4L21kZXZfdmlydGlvX29w cy5oICAgICAgICAgICAgICAgfCAxNDcgKysrKwo+ICBpbmNsdWRlL2xpbnV4L21vZF9kZXZpY2V0 YWJsZS5oICAgICAgICAgICAgICAgfCAgIDggKwo+ICBzYW1wbGVzL0tjb25maWcgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMTAgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9NYWtlZmls ZSAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tYm9jaHMu YyAgICAgICAgICAgICAgICAgICAgfCAgMTkgKy0KPiAgc2FtcGxlcy92ZmlvLW1kZXYvbWRweS5j ICAgICAgICAgICAgICAgICAgICAgIHwgIDE5ICstCj4gIHNhbXBsZXMvdmZpby1tZGV2L210dHku YyAgICAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+ICBzYW1wbGVzL3ZmaW8tbWRldi9tdm5l dC5jICAgICAgICAgICAgICAgICAgICAgfCA2ODYgKysrKysrKysrKysrKysrKysrCj4gIHNjcmlw dHMvbW9kL2RldmljZXRhYmxlLW9mZnNldHMuYyAgICAgICAgICAgICB8ICAgMyArCj4gIHNjcmlw dHMvbW9kL2ZpbGUyYWxpYXMuYyAgICAgICAgICAgICAgICAgICAgICB8ICAxMSArCj4gIDI0IGZp bGVzIGNoYW5nZWQsIDE1ODUgaW5zZXJ0aW9ucygrKSwgOTEgZGVsZXRpb25zKC0pCj4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbWRldi5jCj4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCBpbmNsdWRlL2xpbnV4L21kZXZfdmZpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS9saW51eC9tZGV2X3ZpcnRpb19vcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQg c2FtcGxlcy92ZmlvLW1kZXYvbXZuZXQuYwo+IAo+IC0tIAo+IDIuMTkuMQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=