netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: mabbas <mabbas@linux.intel.com>
To: Jiri Benc <jbenc@suse.cz>
Cc: netdev@vger.kernel.org
Subject: Re: [PATCH 1/7] d80211:  add SIOCSIWTXPOW, SIOCGIWTXPOW, SIOCSIWPOWER and SIOCGIWPOWER
Date: Thu, 21 Sep 2006 09:43:31 -0700	[thread overview]
Message-ID: <4512C133.7010509@linux.intel.com> (raw)
In-Reply-To: <20060921183040.12d679f2@logostar.upir.cz>

Jiri Benc wrote:
> Hi,
>
> sorry for the long delay.
>
> On Mon, 28 Aug 2006 13:45:18 -0700, mabbas wrote:
>   
>> [...]
>> +static int ieee80211_ioctl_siwtxpow(struct net_device *dev,
>> +				    struct iw_request_info *info,
>> +				    union iwreq_data *wrqu, 
>> +				    char *extra)
>> +{
>> +	int rc = 0;
>> +	struct ieee80211_conf *conf = ieee80211_get_hw_conf(dev);
>> +
>> +	if (wrqu->txpower.flags != IW_TXPOW_DBM)
>> +		rc = -EINVAL;
>> +	else
>> +		conf->power_level = wrqu->txpower.value;
>> +
>> +
>> +	ieee80211_ioctl_set_radio_enabled(dev, !wrqu->txpower.disabled);
>>     
>
> Expecting implicit call of ieee80211_hw_config in
> ieee80211_ioctl_set_radio_enabled doesn't look like a good idea. If the
> latter function is changed (to call hw_config only if the radio_enabled
> field isn't the same as before), the SIOCSIWTXPOW ioctl won't have any
> effect.
>
> I'd prefer setting conf->radio_enabled directly and calling of
> ieee80211_hw_config explicitly.
>
> Also, always double check that you do error handling correctly (functions
> usually return something on purpose). (Hm, I already told you in this
> specific case. Please also double check that you haven't missed any comment
> before resending patches.)
>
>   
What about adding a new callback function fot txpower. 
ieee80211_hw_config callback still confusing if txpower was
changed for channel change or because the user setting txpower limit.
>> +	return rc;
>> +}
>> +
>> +static int ieee80211_ioctl_siwpower(struct net_device *dev,
>> +				    struct iw_request_info *info,
>> +				    union iwreq_data *wrqu, 
>> +				    char *extra)
>> +{
>> +	struct ieee80211_conf *conf = ieee80211_get_hw_conf(dev);
>> +
>> +	if (wrqu->power.disabled) {
>> +		conf->power_management_enable = 0;
>> +		if (ieee80211_hw_config(dev))
>> +			return -EINVAL;
>> +		return 0;
>>     
>
> This is wrong. Return the error code you've got from ieee80211_hw_config.
>   
Ok
>   
>> +	}
>> +
>> +	if (wrqu->power.flags & IW_POWER_TYPE)
>> +		return -EINVAL;
>> +
>> +	switch (wrqu->power.flags & IW_POWER_MODE) {
>> +	case IW_POWER_ON:       /* If not specified */
>> +	case IW_POWER_MODE:     /* If set all mask */
>> +	case IW_POWER_ALL_R:    /* If explicitely state all */
>> +		break;
>> +	default:                /* Otherwise we don't support it */
>> +		return -EINVAL;
>> +	}
>> +
>> +	conf->power_management_enable = 1;
>> +
>> +	if (ieee80211_hw_config(dev))
>> +		return -EINVAL;
>>     
>
> Ditto.
>
> Thanks,
>
>  Jiri
>
>   

  reply	other threads:[~2006-09-21 16:45 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-28 20:45 [PATCH 1/7] d80211: add SIOCSIWTXPOW, SIOCGIWTXPOW, SIOCSIWPOWER and SIOCGIWPOWER mabbas
2006-09-21 16:30 ` Jiri Benc
2006-09-21 16:43   ` mabbas [this message]
2006-09-21 18:33     ` Jiri Benc
2006-09-21 19:57       ` mabbas
2006-09-21 22:13         ` Jiri Benc
2006-09-21 22:39           ` mabbas
2006-09-22 11:16             ` Jiri Benc
2006-09-22 13:24               ` Larry Finger
2006-09-22 13:30                 ` Johannes Berg
2006-09-22 13:54                   ` Larry Finger
2006-09-25  8:42                     ` Johannes Berg

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=4512C133.7010509@linux.intel.com \
    --to=mabbas@linux.intel.com \
    --cc=jbenc@suse.cz \
    --cc=netdev@vger.kernel.org \
    /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 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).