linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] gpio: omap: prevent module from being unloaded while in use
@ 2015-06-25 15:13 Grygorii Strashko
  2015-06-30 13:52 ` Alexandre Courbot
  2015-07-16 12:27 ` Linus Walleij
  0 siblings, 2 replies; 4+ messages in thread
From: Grygorii Strashko @ 2015-06-25 15:13 UTC (permalink / raw)
  To: Linus Walleij, Alexandre Courbot, tony
  Cc: Sekhar Nori, Santosh Shilimkar, Javier Martinez Canillas,
	linux-omap, linux-gpio, linux-kernel, Grygorii Strashko

OMAP GPIO driver allowed to be built as loadable module, but it
doesn't set owner field in GPIO chip structure. As result,
module_get/put() API is not working and it's possible to unload
OMAP driver while in use:

  omap_gpio 48051000.gpio: REMOVING GPIOCHIP WITH GPIOS STILL REQUESTED

Hence, add missing configuration.

Cc: Tony Lindgren <tony@atomide.com>
Fixes: cac089f9026e ('gpio: omap: Allow building as a loadable module')
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
---
Hi Linus,

Seems this one is for 4.2-rc.

 drivers/gpio/gpio-omap.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index a0ad803..61a731f 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -1187,6 +1187,7 @@ static int omap_gpio_probe(struct platform_device *pdev)
 	bank->irq = res->start;
 	bank->dev = dev;
 	bank->chip.dev = dev;
+	bank->chip.owner = THIS_MODULE;
 	bank->dbck_flag = pdata->dbck_flag;
 	bank->stride = pdata->bank_stride;
 	bank->width = pdata->bank_width;
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-07-16 12:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-25 15:13 [PATCH] gpio: omap: prevent module from being unloaded while in use Grygorii Strashko
2015-06-30 13:52 ` Alexandre Courbot
2015-07-06 15:15   ` Grygorii Strashko
2015-07-16 12:27 ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).