lkml.org 
[lkml]   [2013]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/4] eisa: call put_device if device_register fails
On Fri, Dec 13, 2013 at 07:39:54PM +0100, Levente Kurusa wrote:
> We need to give up the last reference to edev->dev, so
> we need to call put_device().
>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Signed-off-by: Levente Kurusa <levex@linux.com>

I applied this and will push it through my PCI tree, since I don't think
anybody really takes care of EISA these days.

I looked at other callers of device_register(), and most of them look like
they have the same problem. Can you fix the others, too? This patch says
"2/4", so maybe you already are, but I can't find the other patches in the
series.

Bjorn

> ---
> drivers/eisa/eisa-bus.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/eisa/eisa-bus.c b/drivers/eisa/eisa-bus.c
> index 272a3ec..8842cde 100644
> --- a/drivers/eisa/eisa-bus.c
> +++ b/drivers/eisa/eisa-bus.c
> @@ -232,8 +232,10 @@ static int __init eisa_init_device(struct eisa_root_device *root,
> static int __init eisa_register_device(struct eisa_device *edev)
> {
> int rc = device_register(&edev->dev);
> - if (rc)
> + if (rc) {
> + put_device(&edev->dev);
> return rc;
> + }
>
> rc = device_create_file(&edev->dev, &dev_attr_signature);
> if (rc)
> --
> 1.8.3.1
>


\
 
 \ /
  Last update: 2013-12-13 20:41    [W:0.030 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site