All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jean Delvare <khali@linux-fr.org>
To: "Mark M. Hoffman" <mhoffman@lightlink.com>
Cc: Riku Voipio <riku.voipio@iki.fi>, Adrian Bunk <bunk@kernel.org>,
	linux-kernel@vger.kernel.org, lm-sensors@lm-sensors.org
Subject: Re: [lm-sensors] hwmon/f75375s.c: buggy if()
Date: Fri, 19 Oct 2007 12:37:54 +0000	[thread overview]
Message-ID: <20071019143754.0aa4483b@hyperion.delvare> (raw)
In-Reply-To: <20071018133744.GC3526@jupiter.solarsys.private>

Hi Mark, hi Riku,

On Thu, 18 Oct 2007 09:37:44 -0400, Mark M. Hoffman wrote:
> That patch doesn't apply here, so I applied this:
> 
> commit 805763cd743f2aed41dc61a55569fa43cf1f240c
> Author: Riku Voipio <riku.voipio@iki.fi>
> Date:   Thu Oct 18 09:29:53 2007 -0400
> 
>     hwmon: (f75375s) fix pwm mode setting
>     
>     Spotted by the Coverity checker. (Thanks Adrian Bunk)
>     
>     Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
>     Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
> 
> diff --git a/drivers/hwmon/f75375s.c b/drivers/hwmon/f75375s.c
> index 13a0413..59a3470 100644
> --- a/drivers/hwmon/f75375s.c
> +++ b/drivers/hwmon/f75375s.c
> @@ -323,7 +323,7 @@ static ssize_t set_pwm_mode(struct device *dev, struct device_attribute *attr,
>  	int val = simple_strtoul(buf, NULL, 10);
>  	u8 conf = 0;
>  
> -	if (val != 0 || val != 1 || data->kind = f75373)
> +	if (!(val = 0 || val = 1) || data->kind = f75373)
>  		return -EINVAL;
>  
>  	mutex_lock(&data->update_lock);

BTW, that's the wrong way to do it. If the F75373S doesn't support
changing the PWM mode, then the sysfs attribute in question should be
read-only for this chip type. Making it writable and returning an error
on write is confusing.

Riku, can you please submit a patch fixing this? The attribute should
be declared read-only, and then you can use sysfs_chmod_file() to
change it to read-write where supported. Take a look at the w83781d
driver for an example.

Thanks,
-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors

WARNING: multiple messages have this Message-ID (diff)
From: Jean Delvare <khali@linux-fr.org>
To: "Mark M. Hoffman" <mhoffman@lightlink.com>
Cc: Riku Voipio <riku.voipio@iki.fi>, Adrian Bunk <bunk@kernel.org>,
	linux-kernel@vger.kernel.org, lm-sensors@lm-sensors.org
Subject: Re: [lm-sensors] hwmon/f75375s.c: buggy if()
Date: Fri, 19 Oct 2007 14:37:54 +0200	[thread overview]
Message-ID: <20071019143754.0aa4483b@hyperion.delvare> (raw)
In-Reply-To: <20071018133744.GC3526@jupiter.solarsys.private>

Hi Mark, hi Riku,

On Thu, 18 Oct 2007 09:37:44 -0400, Mark M. Hoffman wrote:
> That patch doesn't apply here, so I applied this:
> 
> commit 805763cd743f2aed41dc61a55569fa43cf1f240c
> Author: Riku Voipio <riku.voipio@iki.fi>
> Date:   Thu Oct 18 09:29:53 2007 -0400
> 
>     hwmon: (f75375s) fix pwm mode setting
>     
>     Spotted by the Coverity checker. (Thanks Adrian Bunk)
>     
>     Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
>     Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
> 
> diff --git a/drivers/hwmon/f75375s.c b/drivers/hwmon/f75375s.c
> index 13a0413..59a3470 100644
> --- a/drivers/hwmon/f75375s.c
> +++ b/drivers/hwmon/f75375s.c
> @@ -323,7 +323,7 @@ static ssize_t set_pwm_mode(struct device *dev, struct device_attribute *attr,
>  	int val = simple_strtoul(buf, NULL, 10);
>  	u8 conf = 0;
>  
> -	if (val != 0 || val != 1 || data->kind == f75373)
> +	if (!(val == 0 || val == 1) || data->kind == f75373)
>  		return -EINVAL;
>  
>  	mutex_lock(&data->update_lock);

BTW, that's the wrong way to do it. If the F75373S doesn't support
changing the PWM mode, then the sysfs attribute in question should be
read-only for this chip type. Making it writable and returning an error
on write is confusing.

Riku, can you please submit a patch fixing this? The attribute should
be declared read-only, and then you can use sysfs_chmod_file() to
change it to read-write where supported. Take a look at the w83781d
driver for an example.

Thanks,
-- 
Jean Delvare

  reply	other threads:[~2007-10-19 12:37 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-17 19:54 [lm-sensors] hwmon/f75375s.c: buggy if() Adrian Bunk
2007-10-17 19:54 ` Adrian Bunk
2007-10-17 20:45 ` [lm-sensors] " Riku Voipio
2007-10-17 20:45   ` Riku Voipio
2007-10-18 13:37   ` [lm-sensors] " Mark M. Hoffman
2007-10-18 13:37     ` Mark M. Hoffman
2007-10-19 12:37     ` Jean Delvare [this message]
2007-10-19 12:37       ` [lm-sensors] " Jean Delvare
2007-10-24 11:50       ` Riku Voipio
2007-10-24 11:50         ` Riku Voipio
2007-10-25  2:25         ` Mark M. Hoffman
2007-10-25  2:25           ` Mark M. Hoffman
2007-10-25 11:48           ` Riku Voipio
2007-10-25 11:48             ` Riku Voipio
2007-10-26  8:36             ` Jean Delvare
2007-10-26  8:36               ` Jean Delvare
2007-10-26 11:14               ` Riku Voipio
2007-10-26 11:14                 ` Riku Voipio
2007-10-26 21:15                 ` Jean Delvare
2007-10-26 21:15                   ` Jean Delvare
2007-10-28 17:33                 ` Mark M. Hoffman
2007-10-28 17:33                   ` Mark M. Hoffman
2007-10-25 11:09         ` Jean Delvare
2007-10-25 11:09           ` Jean Delvare
2007-10-26 22:35 ` Riku Voipio
2007-10-31 15:19 ` Jean Delvare
2007-11-01 11:27 ` Christian Emmerich
2007-11-02 10:24 ` Jean Delvare

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=20071019143754.0aa4483b@hyperion.delvare \
    --to=khali@linux-fr.org \
    --cc=bunk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lm-sensors@lm-sensors.org \
    --cc=mhoffman@lightlink.com \
    --cc=riku.voipio@iki.fi \
    /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.