All of lore.kernel.org
 help / color / mirror / Atom feed
From: gregkh@linuxfoundation.org (Greg KH)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] USB otg: use try_module_get in all usb_get_phy functions and add missing module_put
Date: Wed, 27 Feb 2013 08:21:46 -0800	[thread overview]
Message-ID: <20130227162146.GE21645@kroah.com> (raw)
In-Reply-To: <1361974273-17087-2-git-send-email-mkl@pengutronix.de>

On Wed, Feb 27, 2013 at 03:11:13PM +0100, Marc Kleine-Budde wrote:
> In patch "5d3c28b usb: otg: add device tree support to otg library"
> devm_usb_get_phy_by_phandle() was added. It uses try_module_get() to lock the
> phy driver in memory. The corresponding module_put() is missing in that patch.
> 
> This patch adds try_module_get() to usb_get_phy() and usb_get_phy_dev().
> Further the missing module_put() is added to usb_put_phy().
> 
> Reviewed-by: Kishon Vijay Abraham I <kishon@ti.com>
> Acked-by: Felipe Balbi <balbi@ti.com>
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
> ---
>  drivers/usb/otg/otg.c |   10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/otg/otg.c b/drivers/usb/otg/otg.c
> index e181439..2bd03d2 100644
> --- a/drivers/usb/otg/otg.c
> +++ b/drivers/usb/otg/otg.c
> @@ -130,7 +130,7 @@ struct usb_phy *usb_get_phy(enum usb_phy_type type)
>  	spin_lock_irqsave(&phy_lock, flags);
>  
>  	phy = __usb_find_phy(&phy_list, type);
> -	if (IS_ERR(phy)) {
> +	if (IS_ERR(phy) || !try_module_get(phy->dev->driver->owner)) {

Ugh, really?  We really are trying this type of module locking mess?

Why?  What is it solving?  What's wrong with having the module be able
to be unloaded whenever it wants to?  No one should be doing that and
expecting that their hardware would still work properly, right?

I really don't like this type of thing, sorry.

greg k-h

  reply	other threads:[~2013-02-27 16:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-27 14:11 [PATCH] otg-for-v3.9-v1: USB otg: fix usage of try_module_get() and module_put() Marc Kleine-Budde
2013-02-27 14:11 ` [PATCH] USB otg: use try_module_get in all usb_get_phy functions and add missing module_put Marc Kleine-Budde
2013-02-27 16:21   ` Greg KH [this message]
2013-02-27 16:33     ` Marc Kleine-Budde
2013-02-28  0:41       ` Greg KH
2013-02-28  6:08         ` kishon
2013-02-27 16:29 ` [PATCH] otg-for-v3.9-v1: USB otg: fix usage of try_module_get() and module_put() Steffen Trumtrar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130227162146.GE21645@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.