From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from galahad.ideasonboard.com ([185.26.127.97]:51085 "EHLO galahad.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754472AbcHSIjZ (ORCPT ); Fri, 19 Aug 2016 04:39:25 -0400 From: Laurent Pinchart To: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org Subject: [PATCH 1/6] drm: Don't implement empty prepare_fb()/cleanup_fb() Date: Fri, 19 Aug 2016 11:39:29 +0300 Message-Id: <1471595974-28960-2-git-send-email-laurent.pinchart+renesas@ideasonboard.com> In-Reply-To: <1471595974-28960-1-git-send-email-laurent.pinchart+renesas@ideasonboard.com> References: <1471595974-28960-1-git-send-email-laurent.pinchart+renesas@ideasonboard.com> Sender: linux-media-owner@vger.kernel.org List-ID: The plane .prepare_fb() and .cleanup_fb() helpers are optional, there's no need to implement empty stubs, and no need to explicitly set the function pointers to NULL either. Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/arc/arcpgu_crtc.c | 2 -- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 15 --------------- drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 15 --------------- drivers/gpu/drm/tegra/dc.c | 17 ----------------- drivers/gpu/drm/vc4/vc4_plane.c | 2 -- 5 files changed, 51 deletions(-) diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c index ee0a61c2861b..7130b044b004 100644 --- a/drivers/gpu/drm/arc/arcpgu_crtc.c +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c @@ -183,8 +183,6 @@ static void arc_pgu_plane_atomic_update(struct drm_plane *plane, } static const struct drm_plane_helper_funcs arc_pgu_plane_helper_funcs = { - .prepare_fb = NULL, - .cleanup_fb = NULL, .atomic_update = arc_pgu_plane_atomic_update, }; diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c index e50467a0deb0..a7e5486bd1e9 100644 --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c @@ -169,25 +169,10 @@ static void fsl_dcu_drm_plane_atomic_update(struct drm_plane *plane, return; } -static void -fsl_dcu_drm_plane_cleanup_fb(struct drm_plane *plane, - const struct drm_plane_state *new_state) -{ -} - -static int -fsl_dcu_drm_plane_prepare_fb(struct drm_plane *plane, - const struct drm_plane_state *new_state) -{ - return 0; -} - static const struct drm_plane_helper_funcs fsl_dcu_drm_plane_helper_funcs = { .atomic_check = fsl_dcu_drm_plane_atomic_check, .atomic_disable = fsl_dcu_drm_plane_atomic_disable, .atomic_update = fsl_dcu_drm_plane_atomic_update, - .cleanup_fb = fsl_dcu_drm_plane_cleanup_fb, - .prepare_fb = fsl_dcu_drm_plane_prepare_fb, }; static void fsl_dcu_drm_plane_destroy(struct drm_plane *plane) diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c index c3707d47cd89..635ead039b8b 100644 --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c @@ -815,19 +815,6 @@ static void ade_disable_channel(struct ade_plane *aplane) ade_compositor_routing_disable(base, ch); } -static int ade_plane_prepare_fb(struct drm_plane *plane, - const struct drm_plane_state *new_state) -{ - /* do nothing */ - return 0; -} - -static void ade_plane_cleanup_fb(struct drm_plane *plane, - const struct drm_plane_state *old_state) -{ - /* do nothing */ -} - static int ade_plane_atomic_check(struct drm_plane *plane, struct drm_plane_state *state) { @@ -895,8 +882,6 @@ static void ade_plane_atomic_disable(struct drm_plane *plane, } static const struct drm_plane_helper_funcs ade_plane_helper_funcs = { - .prepare_fb = ade_plane_prepare_fb, - .cleanup_fb = ade_plane_cleanup_fb, .atomic_check = ade_plane_atomic_check, .atomic_update = ade_plane_atomic_update, .atomic_disable = ade_plane_atomic_disable, diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c index 8495bd01b544..3de7ce33d3d4 100644 --- a/drivers/gpu/drm/tegra/dc.c +++ b/drivers/gpu/drm/tegra/dc.c @@ -480,17 +480,6 @@ static const struct drm_plane_funcs tegra_primary_plane_funcs = { .atomic_destroy_state = tegra_plane_atomic_destroy_state, }; -static int tegra_plane_prepare_fb(struct drm_plane *plane, - const struct drm_plane_state *new_state) -{ - return 0; -} - -static void tegra_plane_cleanup_fb(struct drm_plane *plane, - const struct drm_plane_state *old_fb) -{ -} - static int tegra_plane_state_add(struct tegra_plane *plane, struct drm_plane_state *state) { @@ -624,8 +613,6 @@ static void tegra_plane_atomic_disable(struct drm_plane *plane, } static const struct drm_plane_helper_funcs tegra_primary_plane_helper_funcs = { - .prepare_fb = tegra_plane_prepare_fb, - .cleanup_fb = tegra_plane_cleanup_fb, .atomic_check = tegra_plane_atomic_check, .atomic_update = tegra_plane_atomic_update, .atomic_disable = tegra_plane_atomic_disable, @@ -796,8 +783,6 @@ static const struct drm_plane_funcs tegra_cursor_plane_funcs = { }; static const struct drm_plane_helper_funcs tegra_cursor_plane_helper_funcs = { - .prepare_fb = tegra_plane_prepare_fb, - .cleanup_fb = tegra_plane_cleanup_fb, .atomic_check = tegra_cursor_atomic_check, .atomic_update = tegra_cursor_atomic_update, .atomic_disable = tegra_cursor_atomic_disable, @@ -866,8 +851,6 @@ static const uint32_t tegra_overlay_plane_formats[] = { }; static const struct drm_plane_helper_funcs tegra_overlay_plane_helper_funcs = { - .prepare_fb = tegra_plane_prepare_fb, - .cleanup_fb = tegra_plane_cleanup_fb, .atomic_check = tegra_plane_atomic_check, .atomic_update = tegra_plane_atomic_update, .atomic_disable = tegra_plane_atomic_disable, diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c index 29e4b400e25e..881bf489478b 100644 --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c @@ -735,8 +735,6 @@ void vc4_plane_async_set_fb(struct drm_plane *plane, struct drm_framebuffer *fb) } static const struct drm_plane_helper_funcs vc4_plane_helper_funcs = { - .prepare_fb = NULL, - .cleanup_fb = NULL, .atomic_check = vc4_plane_atomic_check, .atomic_update = vc4_plane_atomic_update, }; -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: [PATCH 1/6] drm: Don't implement empty prepare_fb()/cleanup_fb() Date: Fri, 19 Aug 2016 11:39:29 +0300 Message-ID: <1471595974-28960-2-git-send-email-laurent.pinchart+renesas@ideasonboard.com> References: <1471595974-28960-1-git-send-email-laurent.pinchart+renesas@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [IPv6:2001:4b98:dc2:45:216:3eff:febb:480d]) by gabe.freedesktop.org (Postfix) with ESMTPS id 185996EBB9 for ; Fri, 19 Aug 2016 08:39:23 +0000 (UTC) In-Reply-To: <1471595974-28960-1-git-send-email-laurent.pinchart+renesas@ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org VGhlIHBsYW5lIC5wcmVwYXJlX2ZiKCkgYW5kIC5jbGVhbnVwX2ZiKCkgaGVscGVycyBhcmUgb3B0 aW9uYWwsIHRoZXJlJ3MKbm8gbmVlZCB0byBpbXBsZW1lbnQgZW1wdHkgc3R1YnMsIGFuZCBubyBu ZWVkIHRvIGV4cGxpY2l0bHkgc2V0IHRoZQpmdW5jdGlvbiBwb2ludGVycyB0byBOVUxMIGVpdGhl ci4KClNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxhdXJlbnQucGluY2hhcnQrcmVu ZXNhc0BpZGVhc29uYm9hcmQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hcmMvYXJjcGd1X2Ny dGMuYyAgICAgICAgICAgICAgIHwgIDIgLS0KIGRyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9k Y3VfZHJtX3BsYW5lLmMgICAgIHwgMTUgLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0v aGlzaWxpY29uL2tpcmluL2tpcmluX2RybV9hZGUuYyB8IDE1IC0tLS0tLS0tLS0tLS0tLQogZHJp dmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMgICAgICAgICAgICAgICAgICAgICAgfCAxNyAtLS0tLS0t LS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcGxhbmUuYyAgICAgICAgICAgICAg ICAgfCAgMiAtLQogNSBmaWxlcyBjaGFuZ2VkLCA1MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYXJjL2FyY3BndV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJj L2FyY3BndV9jcnRjLmMKaW5kZXggZWUwYTYxYzI4NjFiLi43MTMwYjA0NGIwMDQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hcmMvYXJjcGd1X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vYXJjL2FyY3BndV9jcnRjLmMKQEAgLTE4Myw4ICsxODMsNiBAQCBzdGF0aWMgdm9pZCBhcmNf cGd1X3BsYW5lX2F0b21pY191cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiB9CiAKIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyBhcmNfcGd1X3BsYW5lX2hl bHBlcl9mdW5jcyA9IHsKLQkucHJlcGFyZV9mYiA9IE5VTEwsCi0JLmNsZWFudXBfZmIgPSBOVUxM LAogCS5hdG9taWNfdXBkYXRlID0gYXJjX3BndV9wbGFuZV9hdG9taWNfdXBkYXRlLAogfTsKIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2RjdV9kcm1fcGxhbmUuYyBi L2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX3BsYW5lLmMKaW5kZXggZTUwNDY3 YTBkZWIwLi5hN2U1NDg2YmQxZTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1 L2ZzbF9kY3VfZHJtX3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2Rj dV9kcm1fcGxhbmUuYwpAQCAtMTY5LDI1ICsxNjksMTAgQEAgc3RhdGljIHZvaWQgZnNsX2RjdV9k cm1fcGxhbmVfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAlyZXR1cm47 CiB9CiAKLXN0YXRpYyB2b2lkCi1mc2xfZGN1X2RybV9wbGFuZV9jbGVhbnVwX2ZiKHN0cnVjdCBk cm1fcGxhbmUgKnBsYW5lLAotCQkJICAgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpu ZXdfc3RhdGUpCi17Ci19Ci0KLXN0YXRpYyBpbnQKLWZzbF9kY3VfZHJtX3BsYW5lX3ByZXBhcmVf ZmIoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCi0JCQkgICAgIGNvbnN0IHN0cnVjdCBkcm1fcGxh bmVfc3RhdGUgKm5ld19zdGF0ZSkKLXsKLQlyZXR1cm4gMDsKLX0KLQogc3RhdGljIGNvbnN0IHN0 cnVjdCBkcm1fcGxhbmVfaGVscGVyX2Z1bmNzIGZzbF9kY3VfZHJtX3BsYW5lX2hlbHBlcl9mdW5j cyA9IHsKIAkuYXRvbWljX2NoZWNrID0gZnNsX2RjdV9kcm1fcGxhbmVfYXRvbWljX2NoZWNrLAog CS5hdG9taWNfZGlzYWJsZSA9IGZzbF9kY3VfZHJtX3BsYW5lX2F0b21pY19kaXNhYmxlLAogCS5h dG9taWNfdXBkYXRlID0gZnNsX2RjdV9kcm1fcGxhbmVfYXRvbWljX3VwZGF0ZSwKLQkuY2xlYW51 cF9mYiA9IGZzbF9kY3VfZHJtX3BsYW5lX2NsZWFudXBfZmIsCi0JLnByZXBhcmVfZmIgPSBmc2xf ZGN1X2RybV9wbGFuZV9wcmVwYXJlX2ZiLAogfTsKIAogc3RhdGljIHZvaWQgZnNsX2RjdV9kcm1f cGxhbmVfZGVzdHJveShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2lyaW5fZHJtX2FkZS5jIGIvZHJpdmVycy9ncHUv ZHJtL2hpc2lsaWNvbi9raXJpbi9raXJpbl9kcm1fYWRlLmMKaW5kZXggYzM3MDdkNDdjZDg5Li42 MzVlYWQwMzliOGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4v a2lyaW5fZHJtX2FkZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2ly aW5fZHJtX2FkZS5jCkBAIC04MTUsMTkgKzgxNSw2IEBAIHN0YXRpYyB2b2lkIGFkZV9kaXNhYmxl X2NoYW5uZWwoc3RydWN0IGFkZV9wbGFuZSAqYXBsYW5lKQogCWFkZV9jb21wb3NpdG9yX3JvdXRp bmdfZGlzYWJsZShiYXNlLCBjaCk7CiB9CiAKLXN0YXRpYyBpbnQgYWRlX3BsYW5lX3ByZXBhcmVf ZmIoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCi0JCQkJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9z dGF0ZSAqbmV3X3N0YXRlKQotewotCS8qIGRvIG5vdGhpbmcgKi8KLQlyZXR1cm4gMDsKLX0KLQot c3RhdGljIHZvaWQgYWRlX3BsYW5lX2NsZWFudXBfZmIoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUs Ci0JCQkJIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSkKLXsKLQkvKiBk byBub3RoaW5nICovCi19Ci0KIHN0YXRpYyBpbnQgYWRlX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1 Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAkJCQkgIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRl KQogewpAQCAtODk1LDggKzg4Miw2IEBAIHN0YXRpYyB2b2lkIGFkZV9wbGFuZV9hdG9taWNfZGlz YWJsZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fcGxhbmVfaGVscGVyX2Z1bmNzIGFkZV9wbGFuZV9oZWxwZXJfZnVuY3MgPSB7Ci0JLnByZXBh cmVfZmIgPSBhZGVfcGxhbmVfcHJlcGFyZV9mYiwKLQkuY2xlYW51cF9mYiA9IGFkZV9wbGFuZV9j bGVhbnVwX2ZiLAogCS5hdG9taWNfY2hlY2sgPSBhZGVfcGxhbmVfYXRvbWljX2NoZWNrLAogCS5h dG9taWNfdXBkYXRlID0gYWRlX3BsYW5lX2F0b21pY191cGRhdGUsCiAJLmF0b21pY19kaXNhYmxl ID0gYWRlX3BsYW5lX2F0b21pY19kaXNhYmxlLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L3RlZ3JhL2RjLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYwppbmRleCA4NDk1YmQwMWI1 NDQuLjNkZTdjZTMzZDNkNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMKQEAgLTQ4MCwxNyArNDgwLDYgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfZnVuY3MgdGVncmFfcHJpbWFyeV9wbGFuZV9mdW5j cyA9IHsKIAkuYXRvbWljX2Rlc3Ryb3lfc3RhdGUgPSB0ZWdyYV9wbGFuZV9hdG9taWNfZGVzdHJv eV9zdGF0ZSwKIH07CiAKLXN0YXRpYyBpbnQgdGVncmFfcGxhbmVfcHJlcGFyZV9mYihzdHJ1Y3Qg ZHJtX3BsYW5lICpwbGFuZSwKLQkJCQkgIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm5l d19zdGF0ZSkKLXsKLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIHZvaWQgdGVncmFfcGxhbmVfY2xl YW51cF9mYihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKLQkJCQkgICBjb25zdCBzdHJ1Y3QgZHJt X3BsYW5lX3N0YXRlICpvbGRfZmIpCi17Ci19Ci0KIHN0YXRpYyBpbnQgdGVncmFfcGxhbmVfc3Rh dGVfYWRkKHN0cnVjdCB0ZWdyYV9wbGFuZSAqcGxhbmUsCiAJCQkJIHN0cnVjdCBkcm1fcGxhbmVf c3RhdGUgKnN0YXRlKQogewpAQCAtNjI0LDggKzYxMyw2IEBAIHN0YXRpYyB2b2lkIHRlZ3JhX3Bs YW5lX2F0b21pY19kaXNhYmxlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogfQogCiBzdGF0aWMg Y29uc3Qgc3RydWN0IGRybV9wbGFuZV9oZWxwZXJfZnVuY3MgdGVncmFfcHJpbWFyeV9wbGFuZV9o ZWxwZXJfZnVuY3MgPSB7Ci0JLnByZXBhcmVfZmIgPSB0ZWdyYV9wbGFuZV9wcmVwYXJlX2ZiLAot CS5jbGVhbnVwX2ZiID0gdGVncmFfcGxhbmVfY2xlYW51cF9mYiwKIAkuYXRvbWljX2NoZWNrID0g dGVncmFfcGxhbmVfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfdXBkYXRlID0gdGVncmFfcGxhbmVf YXRvbWljX3VwZGF0ZSwKIAkuYXRvbWljX2Rpc2FibGUgPSB0ZWdyYV9wbGFuZV9hdG9taWNfZGlz YWJsZSwKQEAgLTc5Niw4ICs3ODMsNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9m dW5jcyB0ZWdyYV9jdXJzb3JfcGxhbmVfZnVuY3MgPSB7CiB9OwogCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRybV9wbGFuZV9oZWxwZXJfZnVuY3MgdGVncmFfY3Vyc29yX3BsYW5lX2hlbHBlcl9mdW5j cyA9IHsKLQkucHJlcGFyZV9mYiA9IHRlZ3JhX3BsYW5lX3ByZXBhcmVfZmIsCi0JLmNsZWFudXBf ZmIgPSB0ZWdyYV9wbGFuZV9jbGVhbnVwX2ZiLAogCS5hdG9taWNfY2hlY2sgPSB0ZWdyYV9jdXJz b3JfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfdXBkYXRlID0gdGVncmFfY3Vyc29yX2F0b21pY191 cGRhdGUsCiAJLmF0b21pY19kaXNhYmxlID0gdGVncmFfY3Vyc29yX2F0b21pY19kaXNhYmxlLApA QCAtODY2LDggKzg1MSw2IEBAIHN0YXRpYyBjb25zdCB1aW50MzJfdCB0ZWdyYV9vdmVybGF5X3Bs YW5lX2Zvcm1hdHNbXSA9IHsKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hl bHBlcl9mdW5jcyB0ZWdyYV9vdmVybGF5X3BsYW5lX2hlbHBlcl9mdW5jcyA9IHsKLQkucHJlcGFy ZV9mYiA9IHRlZ3JhX3BsYW5lX3ByZXBhcmVfZmIsCi0JLmNsZWFudXBfZmIgPSB0ZWdyYV9wbGFu ZV9jbGVhbnVwX2ZiLAogCS5hdG9taWNfY2hlY2sgPSB0ZWdyYV9wbGFuZV9hdG9taWNfY2hlY2ss CiAJLmF0b21pY191cGRhdGUgPSB0ZWdyYV9wbGFuZV9hdG9taWNfdXBkYXRlLAogCS5hdG9taWNf ZGlzYWJsZSA9IHRlZ3JhX3BsYW5lX2F0b21pY19kaXNhYmxlLApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL3ZjNC92YzRfcGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X3BsYW5l LmMKaW5kZXggMjllNGI0MDBlMjVlLi44ODFiZjQ4OTQ3OGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS92YzQvdmM0X3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcGxh bmUuYwpAQCAtNzM1LDggKzczNSw2IEBAIHZvaWQgdmM0X3BsYW5lX2FzeW5jX3NldF9mYihzdHJ1 Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIpCiB9CiAKIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyB2YzRfcGxhbmVfaGVscGVy X2Z1bmNzID0gewotCS5wcmVwYXJlX2ZiID0gTlVMTCwKLQkuY2xlYW51cF9mYiA9IE5VTEwsCiAJ LmF0b21pY19jaGVjayA9IHZjNF9wbGFuZV9hdG9taWNfY2hlY2ssCiAJLmF0b21pY191cGRhdGUg PSB2YzRfcGxhbmVfYXRvbWljX3VwZGF0ZSwKIH07Ci0tIApSZWdhcmRzLAoKTGF1cmVudCBQaW5j aGFydAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJp LWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==