All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tamizh chelvam <tamizhr@codeaurora.org>
To: Sergey Matyukevich <sergey.matyukevich.os@quantenna.com>
Cc: johannes@sipsolutions.net, linux-wireless@vger.kernel.org,
	ath10k@lists.infradead.org
Subject: Re: [PATCHv6 1/9] nl80211: New netlink command for TID specific configuration
Date: Wed, 31 Jul 2019 15:34:18 +0530	[thread overview]
Message-ID: <edc16458451377681b540553e1ddea75@codeaurora.org> (raw)
In-Reply-To: <20190711125111.vd4rfixmotyusuai@bars>

On 2019-07-11 18:21, Sergey Matyukevich wrote:
>> Add a new NL command, NL80211_CMD_SET_TID_CONFIG to support
>> data TID specific configuration. This per TID configurations
>> are passed in NL80211_ATTR_TID_CONFIG which is a nested
>> attribute. This patch adds support to configure per TID
>> noack policy through NL80211_TID_ATTR_CONFIG_NOACK attribute.
>> Data TID value for this configuration will be passed through
>> NL80211_TID_ATTR_CONFIG_TID attribute. When the user-space wants
>> this configuration peer specific rather than being applied for
>> all the connected stations, MAC address of the peer can be passed
>> in NL80211_ATTR_MAC attribute. This patch introduced
>> enum ieee80211_tid_conf_mask to notify the driver that which
>> configuration modified.
>> Driver supporting data TID specific noack policy configuration
>> should be advertise through NL80211_EXT_FEATURE_PER_TID_NOACK_CONFIG
>> and supporting per STA data TID noack policy configuration
>> should be advertise through NL80211_EXT_FEATURE_PER_STA_NOACK_CONFIG
>> 
>> Signed-off-by: Tamizh chelvam <tamizhr@codeaurora.org>
> 
> ...
> 
>> +static int parse_tid_conf(struct cfg80211_registered_device *rdev,
>> +                         struct nlattr *attrs[],
>> +                         struct ieee80211_tid_cfg *tid_conf,
>> +                         struct genl_info *info, const u8 *peer)
>> +{
> 
> ...
> 
> 
>> +static int nl80211_set_tid_config(struct sk_buff *skb,
>> +                                 struct genl_info *info)
>> +{
>> +       struct cfg80211_registered_device *rdev = info->user_ptr[0];
>> +       struct nlattr *attrs[NL80211_TID_ATTR_CONFIG_MAX + 1];
>> +       struct net_device *dev = info->user_ptr[1];
>> +       struct ieee80211_tid_config *tid_config;
>> +       struct nlattr *tid;
>> +       int conf_idx = 0, rem_conf;
>> +       int ret = -EINVAL;
>> +       u32 num_conf = 0;
>> +
>> +       if (!info->attrs[NL80211_ATTR_TID_CONFIG])
>> +               return -EINVAL;
>> +
>> +       if (!rdev->ops->set_tid_config)
>> +               return -EOPNOTSUPP;
>> +
>> +       nla_for_each_nested(tid, info->attrs[NL80211_ATTR_TID_CONFIG],
>> +                           rem_conf)
>> +               num_conf++;
>> +
>> +       tid_config = kzalloc(struct_size(tid_config, tid_conf, 
>> num_conf),
>> +                            GFP_KERNEL);
>> +       if (!tid_config)
>> +               return -ENOMEM;
>> +
>> +       tid_config->n_tid_conf = num_conf;
>> +
>> +       if (info->attrs[NL80211_ATTR_MAC])
>> +               tid_config->peer = 
>> nla_data(info->attrs[NL80211_ATTR_MAC]);
>> +
>> +       nla_for_each_nested(tid, info->attrs[NL80211_ATTR_TID_CONFIG],
>> +                           rem_conf) {
>> +               ret = nla_parse_nested_deprecated(attrs, 
>> NL80211_TID_ATTR_CONFIG_MAX,
>> +                                                 tid, NULL, NULL);
>> +
>> +               if (ret)
>> +                       goto bad_tid_conf;
>> +
>> +               if (!attrs[NL80211_TID_ATTR_CONFIG_TID]) {
>> +                       ret = -EINVAL;
>> +                       goto bad_tid_conf;
>> +               }
>> +
>> +               ret = parse_tid_conf(rdev, attrs,
>> +                                    &tid_config->tid_conf[conf_idx],
>> +                                    tid_config->peer);
> 
> 
> Argument 'info' is missing here from parse_tid_conf. IIUC, appropriate
> fixup is included into patch #5. So it looks like rebase issue. But it
> makes sense to fix it since this issue makes the patch set 
> non-bisectable.
> 
My bad. Yes, it is missed in the rebase. I will fix that.

Thanks,
Tamizh.

WARNING: multiple messages have this Message-ID (diff)
From: Tamizh chelvam <tamizhr@codeaurora.org>
To: Sergey Matyukevich <sergey.matyukevich.os@quantenna.com>
Cc: johannes@sipsolutions.net, linux-wireless@vger.kernel.org,
	ath10k@lists.infradead.org
Subject: Re: [PATCHv6 1/9] nl80211: New netlink command for TID specific configuration
Date: Wed, 31 Jul 2019 15:34:18 +0530	[thread overview]
Message-ID: <edc16458451377681b540553e1ddea75@codeaurora.org> (raw)
In-Reply-To: <20190711125111.vd4rfixmotyusuai@bars>

On 2019-07-11 18:21, Sergey Matyukevich wrote:
>> Add a new NL command, NL80211_CMD_SET_TID_CONFIG to support
>> data TID specific configuration. This per TID configurations
>> are passed in NL80211_ATTR_TID_CONFIG which is a nested
>> attribute. This patch adds support to configure per TID
>> noack policy through NL80211_TID_ATTR_CONFIG_NOACK attribute.
>> Data TID value for this configuration will be passed through
>> NL80211_TID_ATTR_CONFIG_TID attribute. When the user-space wants
>> this configuration peer specific rather than being applied for
>> all the connected stations, MAC address of the peer can be passed
>> in NL80211_ATTR_MAC attribute. This patch introduced
>> enum ieee80211_tid_conf_mask to notify the driver that which
>> configuration modified.
>> Driver supporting data TID specific noack policy configuration
>> should be advertise through NL80211_EXT_FEATURE_PER_TID_NOACK_CONFIG
>> and supporting per STA data TID noack policy configuration
>> should be advertise through NL80211_EXT_FEATURE_PER_STA_NOACK_CONFIG
>> 
>> Signed-off-by: Tamizh chelvam <tamizhr@codeaurora.org>
> 
> ...
> 
>> +static int parse_tid_conf(struct cfg80211_registered_device *rdev,
>> +                         struct nlattr *attrs[],
>> +                         struct ieee80211_tid_cfg *tid_conf,
>> +                         struct genl_info *info, const u8 *peer)
>> +{
> 
> ...
> 
> 
>> +static int nl80211_set_tid_config(struct sk_buff *skb,
>> +                                 struct genl_info *info)
>> +{
>> +       struct cfg80211_registered_device *rdev = info->user_ptr[0];
>> +       struct nlattr *attrs[NL80211_TID_ATTR_CONFIG_MAX + 1];
>> +       struct net_device *dev = info->user_ptr[1];
>> +       struct ieee80211_tid_config *tid_config;
>> +       struct nlattr *tid;
>> +       int conf_idx = 0, rem_conf;
>> +       int ret = -EINVAL;
>> +       u32 num_conf = 0;
>> +
>> +       if (!info->attrs[NL80211_ATTR_TID_CONFIG])
>> +               return -EINVAL;
>> +
>> +       if (!rdev->ops->set_tid_config)
>> +               return -EOPNOTSUPP;
>> +
>> +       nla_for_each_nested(tid, info->attrs[NL80211_ATTR_TID_CONFIG],
>> +                           rem_conf)
>> +               num_conf++;
>> +
>> +       tid_config = kzalloc(struct_size(tid_config, tid_conf, 
>> num_conf),
>> +                            GFP_KERNEL);
>> +       if (!tid_config)
>> +               return -ENOMEM;
>> +
>> +       tid_config->n_tid_conf = num_conf;
>> +
>> +       if (info->attrs[NL80211_ATTR_MAC])
>> +               tid_config->peer = 
>> nla_data(info->attrs[NL80211_ATTR_MAC]);
>> +
>> +       nla_for_each_nested(tid, info->attrs[NL80211_ATTR_TID_CONFIG],
>> +                           rem_conf) {
>> +               ret = nla_parse_nested_deprecated(attrs, 
>> NL80211_TID_ATTR_CONFIG_MAX,
>> +                                                 tid, NULL, NULL);
>> +
>> +               if (ret)
>> +                       goto bad_tid_conf;
>> +
>> +               if (!attrs[NL80211_TID_ATTR_CONFIG_TID]) {
>> +                       ret = -EINVAL;
>> +                       goto bad_tid_conf;
>> +               }
>> +
>> +               ret = parse_tid_conf(rdev, attrs,
>> +                                    &tid_config->tid_conf[conf_idx],
>> +                                    tid_config->peer);
> 
> 
> Argument 'info' is missing here from parse_tid_conf. IIUC, appropriate
> fixup is included into patch #5. So it looks like rebase issue. But it
> makes sense to fix it since this issue makes the patch set 
> non-bisectable.
> 
My bad. Yes, it is missed in the rebase. I will fix that.

Thanks,
Tamizh.

_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

  reply	other threads:[~2019-07-31 10:04 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-18  5:27 [PATCHv6 0/9] cfg80211/mac80211: Add support for TID specific configuration Tamizh chelvam
2019-06-18  5:27 ` Tamizh chelvam
2019-06-18  5:27 ` [PATCHv6 1/9] nl80211: New netlink command " Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-07-11 12:51   ` Sergey Matyukevich
2019-07-11 12:51     ` Sergey Matyukevich
2019-07-31 10:04     ` Tamizh chelvam [this message]
2019-07-31 10:04       ` Tamizh chelvam
2019-07-11 13:13   ` Sergey Matyukevich
2019-07-11 13:13     ` Sergey Matyukevich
2019-07-31  9:19   ` Johannes Berg
2019-07-31  9:19     ` Johannes Berg
2019-07-31 10:28     ` Tamizh chelvam
2019-07-31 10:28       ` Tamizh chelvam
2019-07-31  9:25   ` Johannes Berg
2019-07-31  9:25     ` Johannes Berg
2019-08-10 12:40     ` Tamizh chelvam
2019-08-10 12:40       ` Tamizh chelvam
2019-08-21  7:42       ` Johannes Berg
2019-08-21  7:42         ` Johannes Berg
2019-06-18  5:27 ` [PATCHv6 2/9] nl80211: Add new netlink attribute for TID speicific retry count Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-07-31  9:24   ` Johannes Berg
2019-07-31  9:24     ` Johannes Berg
2019-08-10 12:06     ` Tamizh chelvam
2019-08-10 12:06       ` Tamizh chelvam
2019-08-21  7:41       ` Johannes Berg
2019-08-21  7:41         ` Johannes Berg
2019-06-18  5:27 ` [PATCHv6 3/9] nl80211: Add netlink attribute for AMPDU aggregation enable/disable Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-07-31  9:28   ` Johannes Berg
2019-07-31  9:28     ` Johannes Berg
2019-08-10 12:41     ` Tamizh chelvam
2019-08-10 12:41       ` Tamizh chelvam
2019-06-18  5:27 ` [PATCHv6 4/9] nl80211: Add netlink attribute to enable/disable RTS_CTS Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-06-18  5:27 ` [PATCHv6 5/9] nl80211: Add netlink attribute to configure TID specific tx rate Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-07-11 12:54   ` Sergey Matyukevich
2019-07-11 12:54     ` Sergey Matyukevich
2019-07-31 10:08     ` Tamizh chelvam
2019-07-31 10:08       ` Tamizh chelvam
2019-07-31  9:32   ` Johannes Berg
2019-07-31  9:32     ` Johannes Berg
2019-06-18  5:27 ` [PATCHv6 6/9] mac80211: Add api to support configuring TID specific configuration Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-07-31  9:34   ` Johannes Berg
2019-07-31  9:34     ` Johannes Berg
2019-06-18  5:27 ` [PATCHv6 7/9] ath10k: Add wmi command support for station specific TID config Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-06-18  5:27 ` [PATCHv6 8/9] ath10k: Add new api to support TID specific configuration Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam
2019-06-18  5:27 ` [PATCHv6 9/9] ath10k: Add extended TID configuration support Tamizh chelvam
2019-06-18  5:27   ` Tamizh chelvam

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=edc16458451377681b540553e1ddea75@codeaurora.org \
    --to=tamizhr@codeaurora.org \
    --cc=ath10k@lists.infradead.org \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=sergey.matyukevich.os@quantenna.com \
    /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.