linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] staging: oplc_dcon: Fix compilation warning.
@ 2011-02-03 13:22 Marek Belisko
  2011-02-04 23:10 ` Andres Salomon
  0 siblings, 1 reply; 2+ messages in thread
From: Marek Belisko @ 2011-02-03 13:22 UTC (permalink / raw)
  To: gregkh; +Cc: devel, linux-kernel, dilinger, cjb, jon.nettleton, Marek Belisko

Fix compilation warning:
drivers/staging/olpc_dcon/olpc_dcon.c: In function ‘dcon_probe’:
drivers/staging/olpc_dcon/olpc_dcon.c:704:21: warning: ignoring
return value of ‘device_create_file’, declared with attribute warn_unused_result

and add cleaning of created files when creation of one failed.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
---
 drivers/staging/olpc_dcon/olpc_dcon.c |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/olpc_dcon/olpc_dcon.c b/drivers/staging/olpc_dcon/olpc_dcon.c
index 56a283d..7221bb8 100644
--- a/drivers/staging/olpc_dcon/olpc_dcon.c
+++ b/drivers/staging/olpc_dcon/olpc_dcon.c
@@ -674,7 +674,7 @@ static int dcon_detect(struct i2c_client *client, struct i2c_board_info *info)
 
 static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
 {
-	int rc, i;
+	int rc, i, j;
 
 	if (num_registered_fb >= 1)
 		fbinfo = registered_fb[0];
@@ -700,8 +700,14 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
 		goto edev;
 	}
 
-	for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++)
-		device_create_file(&dcon_device->dev, &dcon_device_files[i]);
+	for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++) {
+		rc = device_create_file(&dcon_device->dev,
+					&dcon_device_files[i]);
+		if (rc) {
+			dev_err(&dcon_device->dev, "Cannot create sysfs file\n");
+			goto ecreate;
+		}
+	}
 
 	/* Add the backlight device for the DCON */
 
@@ -728,6 +734,9 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
 
 	return 0;
 
+ ecreate:
+	for (j = 0; j < i; j++)
+		device_remove_file(&dcon_device->dev, &dcon_device_files[j]);
  edev:
 	platform_device_unregister(dcon_device);
 	dcon_device = NULL;
-- 
1.7.1


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

* Re: [PATCH] staging: oplc_dcon: Fix compilation warning.
  2011-02-03 13:22 [PATCH] staging: oplc_dcon: Fix compilation warning Marek Belisko
@ 2011-02-04 23:10 ` Andres Salomon
  0 siblings, 0 replies; 2+ messages in thread
From: Andres Salomon @ 2011-02-04 23:10 UTC (permalink / raw)
  To: Marek Belisko; +Cc: gregkh, devel, linux-kernel, cjb, jon.nettleton


Thanks, looks good to me.  It should probably go in for 2.6.38.

Acked-by: Andres Salomon <dilinger@queued.net>


On Thu,  3 Feb 2011
14:22:08 +0100 Marek Belisko <marek.belisko@open-nandra.com> wrote:

> Fix compilation warning:
> drivers/staging/olpc_dcon/olpc_dcon.c: In function ‘dcon_probe’:
> drivers/staging/olpc_dcon/olpc_dcon.c:704:21: warning: ignoring
> return value of ‘device_create_file’, declared with attribute
> warn_unused_result
> 
> and add cleaning of created files when creation of one failed.
> 
> Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
> ---
>  drivers/staging/olpc_dcon/olpc_dcon.c |   15 ++++++++++++---
>  1 files changed, 12 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/olpc_dcon/olpc_dcon.c
> b/drivers/staging/olpc_dcon/olpc_dcon.c index 56a283d..7221bb8 100644
> --- a/drivers/staging/olpc_dcon/olpc_dcon.c
> +++ b/drivers/staging/olpc_dcon/olpc_dcon.c
> @@ -674,7 +674,7 @@ static int dcon_detect(struct i2c_client *client,
> struct i2c_board_info *info) 
>  static int dcon_probe(struct i2c_client *client, const struct
> i2c_device_id *id) {
> -	int rc, i;
> +	int rc, i, j;
>  
>  	if (num_registered_fb >= 1)
>  		fbinfo = registered_fb[0];
> @@ -700,8 +700,14 @@ static int dcon_probe(struct i2c_client *client,
> const struct i2c_device_id *id) goto edev;
>  	}
>  
> -	for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++)
> -		device_create_file(&dcon_device->dev,
> &dcon_device_files[i]);
> +	for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++) {
> +		rc = device_create_file(&dcon_device->dev,
> +					&dcon_device_files[i]);
> +		if (rc) {
> +			dev_err(&dcon_device->dev, "Cannot create
> sysfs file\n");
> +			goto ecreate;
> +		}
> +	}
>  
>  	/* Add the backlight device for the DCON */
>  
> @@ -728,6 +734,9 @@ static int dcon_probe(struct i2c_client *client,
> const struct i2c_device_id *id) 
>  	return 0;
>  
> + ecreate:
> +	for (j = 0; j < i; j++)
> +		device_remove_file(&dcon_device->dev,
> &dcon_device_files[j]); edev:
>  	platform_device_unregister(dcon_device);
>  	dcon_device = NULL;


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

end of thread, other threads:[~2011-02-04 23:11 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-03 13:22 [PATCH] staging: oplc_dcon: Fix compilation warning Marek Belisko
2011-02-04 23:10 ` Andres Salomon

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).