From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from galahad.ideasonboard.com ([185.26.127.97]:51092 "EHLO galahad.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755042AbcHSIj3 (ORCPT ); Fri, 19 Aug 2016 04:39:29 -0400 From: Laurent Pinchart To: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org Subject: [PATCH 3/6] v4l: rcar-fcp: Don't get/put module reference Date: Fri, 19 Aug 2016 11:39:31 +0300 Message-Id: <1471595974-28960-4-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: Direct callers of the FCP API hold a reference to the FCP module due to module linkage, there's no need to take another one manually. Take a reference to the device instead to ensure that it won't disappear being the caller's back. Signed-off-by: Laurent Pinchart --- drivers/media/platform/rcar-fcp.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/drivers/media/platform/rcar-fcp.c b/drivers/media/platform/rcar-fcp.c index f7bcbf7677a0..7427be1c3741 100644 --- a/drivers/media/platform/rcar-fcp.c +++ b/drivers/media/platform/rcar-fcp.c @@ -53,14 +53,7 @@ struct rcar_fcp_device *rcar_fcp_get(const struct device_node *np) if (fcp->dev->of_node != np) continue; - /* - * Make sure the module won't be unloaded behind our back. This - * is a poor man's safety net, the module should really not be - * unloaded while FCP users can be active. - */ - if (!try_module_get(fcp->dev->driver->owner)) - fcp = NULL; - + get_device(fcp->dev); goto done; } @@ -81,7 +74,7 @@ EXPORT_SYMBOL_GPL(rcar_fcp_get); void rcar_fcp_put(struct rcar_fcp_device *fcp) { if (fcp) - module_put(fcp->dev->driver->owner); + put_device(fcp->dev); } EXPORT_SYMBOL_GPL(rcar_fcp_put); -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: [PATCH 3/6] v4l: rcar-fcp: Don't get/put module reference Date: Fri, 19 Aug 2016 11:39:31 +0300 Message-ID: <1471595974-28960-4-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 BFB9E6EBBC for ; Fri, 19 Aug 2016 08:39:24 +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 RGlyZWN0IGNhbGxlcnMgb2YgdGhlIEZDUCBBUEkgaG9sZCBhIHJlZmVyZW5jZSB0byB0aGUgRkNQ IG1vZHVsZSBkdWUgdG8KbW9kdWxlIGxpbmthZ2UsIHRoZXJlJ3Mgbm8gbmVlZCB0byB0YWtlIGFu b3RoZXIgb25lIG1hbnVhbGx5LiBUYWtlIGEKcmVmZXJlbmNlIHRvIHRoZSBkZXZpY2UgaW5zdGVh ZCB0byBlbnN1cmUgdGhhdCBpdCB3b24ndCBkaXNhcHBlYXIgYmVpbmcKdGhlIGNhbGxlcidzIGJh Y2suCgpTaWduZWQtb2ZmLWJ5OiBMYXVyZW50IFBpbmNoYXJ0IDxsYXVyZW50LnBpbmNoYXJ0K3Jl bmVzYXNAaWRlYXNvbmJvYXJkLmNvbT4KLS0tCiBkcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXIt ZmNwLmMgfCAxMSArKy0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXIt ZmNwLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXItZmNwLmMKaW5kZXggZjdiY2JmNzY3 N2EwLi43NDI3YmUxYzM3NDEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmNh ci1mY3AuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXItZmNwLmMKQEAgLTUzLDE0 ICs1Myw3IEBAIHN0cnVjdCByY2FyX2ZjcF9kZXZpY2UgKnJjYXJfZmNwX2dldChjb25zdCBzdHJ1 Y3QgZGV2aWNlX25vZGUgKm5wKQogCQlpZiAoZmNwLT5kZXYtPm9mX25vZGUgIT0gbnApCiAJCQlj b250aW51ZTsKIAotCQkvKgotCQkgKiBNYWtlIHN1cmUgdGhlIG1vZHVsZSB3b24ndCBiZSB1bmxv YWRlZCBiZWhpbmQgb3VyIGJhY2suIFRoaXMKLQkJICogaXMgYSBwb29yIG1hbidzIHNhZmV0eSBu ZXQsIHRoZSBtb2R1bGUgc2hvdWxkIHJlYWxseSBub3QgYmUKLQkJICogdW5sb2FkZWQgd2hpbGUg RkNQIHVzZXJzIGNhbiBiZSBhY3RpdmUuCi0JCSAqLwotCQlpZiAoIXRyeV9tb2R1bGVfZ2V0KGZj cC0+ZGV2LT5kcml2ZXItPm93bmVyKSkKLQkJCWZjcCA9IE5VTEw7Ci0KKwkJZ2V0X2RldmljZShm Y3AtPmRldik7CiAJCWdvdG8gZG9uZTsKIAl9CiAKQEAgLTgxLDcgKzc0LDcgQEAgRVhQT1JUX1NZ TUJPTF9HUEwocmNhcl9mY3BfZ2V0KTsKIHZvaWQgcmNhcl9mY3BfcHV0KHN0cnVjdCByY2FyX2Zj cF9kZXZpY2UgKmZjcCkKIHsKIAlpZiAoZmNwKQotCQltb2R1bGVfcHV0KGZjcC0+ZGV2LT5kcml2 ZXItPm93bmVyKTsKKwkJcHV0X2RldmljZShmY3AtPmRldik7CiB9CiBFWFBPUlRfU1lNQk9MX0dQ TChyY2FyX2ZjcF9wdXQpOwogCi0tIApSZWdhcmRzLAoKTGF1cmVudCBQaW5jaGFydAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==