lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4C96401C.1000707@bfs.de>
Date:	Sun, 19 Sep 2010 18:53:48 +0200
From:	walter harms <wharms@....de>
To:	Vasiliy Kulikov <segooon@...il.com>
CC:	kernel-janitors@...r.kernel.org,
	James Bottomley <James.Bottomley@...senPartnership.com>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 03/14] mca: fix device_register() error handling



Vasiliy Kulikov schrieb:
> If device_register() fails then call put_device().
> See comment to device_register.
> 
> Signed-off-by: Vasiliy Kulikov <segooon@...il.com>
> ---
>  I cannot compile this driver, so it is not tested at all.
> 
>  drivers/mca/mca-bus.c |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/mca/mca-bus.c b/drivers/mca/mca-bus.c
> index ada5ebb..7162f08 100644
> --- a/drivers/mca/mca-bus.c
> +++ b/drivers/mca/mca-bus.c
> @@ -116,8 +116,10 @@ int __init mca_register_device(int bus, struct mca_device *mca_dev)
>  	mca_dev->dev.coherent_dma_mask = mca_dev->dma_mask;
>  
>  	rc = device_register(&mca_dev->dev);
> -	if (rc)
> +	if (rc) {
> +		put_device(&mca_dev->dev);
>  		goto err_out;
> +	}
>  
>  	rc = device_create_file(&mca_dev->dev, &dev_attr_id);
>  	if (rc) goto err_out_devreg;
> @@ -154,6 +156,7 @@ struct mca_bus * __devinit mca_attach_bus(int bus)
>  	dev_set_name(&mca_bus->dev, "mca%d", bus);
>  	sprintf(mca_bus->name,"Host %s MCA Bridge", bus ? "Secondary" : "Primary");
>  	if (device_register(&mca_bus->dev)) {
> +		put_device(&mca_bus->dev);
>  		kfree(mca_bus);
>  		return NULL;
>  	}

just a minor: dev_set_name() is not check here. (But is in other places).

re,
 wh


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ