All of lore.kernel.org
 help / color / mirror / Atom feed
From: Varka Bhadram <varkabhadram@gmail.com>
To: Alexander Aring <alex.aring@gmail.com>
Cc: linux-wpan@vger.kernel.org, kernel@pengutronix.de,
	phoebe.buckheister@itwm.fraunhofer.de
Subject: Re: [RFC bluetooth-next 00/15] ieee802154: add support for phy capabilities
Date: Mon, 27 Apr 2015 12:21:43 +0530	[thread overview]
Message-ID: <553DDC7F.8020109@gmail.com> (raw)
In-Reply-To: <20150425100633.GD3395@omega>

Hi Alex,

On 04/25/2015 03:36 PM, Alexander Aring wrote:

> On Fri, Apr 24, 2015 at 10:41:52AM +0530, Varka Bhadram wrote:
> ...
>> May be this is not the right place to ask this question.
>>
> creating a new mail to linux-wpan next time? And of course you can ask
> this here.
>
>> Do you think that patch at [0] required to us..?
>>
> no.
>
>> That will be useful multi-queue environment. Even though
>> its better to have this feature.
>>
> Note about tx multi-queue environment:
>
> Wireless (802.11) != 802.15.4
>
> 802.11 follows different strategies like 802.15.4 follows [0]. "was
> chartered to investigate a low data rate solution...", of course
> low-power and such things. I would not say that performance isn't
> important for us. (I also like to remove several shift operation in the
> current frame parsing) What I am think is that a multiqueue environment
> gives us not a big benefit.
>
> Maybe I am wrong here, you can implement it and give some benchmark
> tests if you want.
>
>
> Another thing is that the multiqueue in wireless do implement a
> priority queue (that's what I understand). So we need to have somewhere
> option which sets this priority somewhere. [1]
>
> mac802154 do that for different types of content in the payload like
> video or audio streaming. They have some priority enums defined at [2].
> Every queue has then a own priority.
>
> You see that with multiqueue inside mac80211 they want to improve
> different payload content like video which is a use case of the 802.11
> standard. For example streaming videos with 802.15.4, you can forget that.
> But then we have other things like "low energy".
>
> This is why there is no general "IoT" wireless standard outside, each have
> their benefit depends on your use case. If you want to stream videos and call
> it "IoT - Application" then 802.15.4 is not what you want. I did a fast
> googling and found [3], you see different wireless standards compared with 
> Range and data rate.
>
>
> To detect a priority for _maybe_ implement such multiqueue handling in
> 802.15.4 then this could be dine by set it in some sockopt of 802.15.4 sockets
> or grab it from DCSP field of IPv6 header, like wireless it also does [1] - 
> "DSCP (RFC 2474):" for 6LoWPAN then. But general this would be a benefit if you
> have a lot of other _lower_ priority traffic.
>
>
>
> It also could be that a wireless driver/transceiver can support
> put frame in "transceiver queue" when current one is transmitted at the moment.
> I don't know if something exists at the moment, the at86rf2xx have only
> one frame buffer which cannot be overwritten while transmit (or can but
> then it need to handle real time, I think we can't never support that
> inside linux).
>
>
>
>
> Now note about patch ("mac80211: use per-CPU TX/RX statistics")
> 084d8536fc4f1581f975c1a5fcacd4384555bdcf:
>
> First I don't apply something like that if we doesn't have multiqueue tx queue
> (if it really increase perfomance), because this patch fix something
> which only happen in multiqueue tx queue handling.
>
> Second: This patch is because there is an issue about increment the tx
> stats on netdev while using multiqueue. So far I understand this is
> because the incrementation is not an atomic operation, so this patch to
> a per cpu operation to be sure that this operation "to increment the tx
> stats" can be run on one cpu. So before this patch mulitple queues was
> running and increment these values at the same time which result in some
> inconsistent behaviour.
>
>
>> If you agree include this, patch is on the way.. 
>>
> no. In short:
>
> 1. We don't have multple tx queues (and I don't think that we can get
>    much benefits from it).
>
> 2. The patch ("mac80211: use per-CPU TX/RX statistics")
>    084d8536fc4f1581f975c1a5fcacd4384555bdcf solved an issue when multiple
>    queues increments the counter on multicore architecture. We don't have
>    this issue because we have only one queue which we stop and wake before
>    transmit and while tx completion. The incrementation is protected by
>    this handling.
>
>
> You should provide patches for an useful case of multiple tx queues with
> benchmark results. Then we need to care about "locking", this is what
> your wireless patch fix does.
>
> - Alex
>
> [0] http://www.ieee802.org/15/pub/TG4.html
> [1] https://wireless.wiki.kernel.org/en/developers/documentation/mac80211/queues
> [2] http://lxr.free-electrons.com/source/include/net/mac80211.h#L102
> [3] http://blogs.freescale.com/wp-content/uploads/2014/11/post-10893-image-4-todays-wireless-landscape.jpg
> [4] 

Agree with you.

Thank you for your explanation.

-- 
Varka Bhadram


  reply	other threads:[~2015-04-27  6:52 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-23 16:47 [RFC bluetooth-next 00/15] ieee802154: add support for phy capabilities Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 01/15] nl802154: cleanup invalid argument handling Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 02/15] at86rf230: remove tabs after define Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 03/15] ieee802154: move validation check out of softmac Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 04/15] mac802154: check for really changes Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 05/15] mac802154: remove check if operation is supported Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 06/15] ieee802154: introduce wpan_phy_supported Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 07/15] ieee802154: add several phy supported handling Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 08/15] ieee802154: add iftypes capability Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 09/15] ieee802154: add support for get tx powers Alexander Aring
2015-04-27 11:49   ` Phoebe Buckheister
2015-04-29  9:07     ` Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 10/15] ieee802154: add support for get cca ed levels Alexander Aring
2015-04-27 11:50   ` Phoebe Buckheister
2015-04-23 16:47 ` [RFC bluetooth-next 11/15] at86rf230: set cca_modes supported flags Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 12/15] at86rf230: add reset states of tx power level Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 13/15] at86rf230: rework tx power support Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 14/15] at86rf230: rework tx cca energy detection level Alexander Aring
2015-04-23 16:47 ` [RFC bluetooth-next 15/15] nl802154: add support for dump phy capabilities Alexander Aring
2015-04-24  4:43   ` Varka Bhadram
2015-04-25  6:47     ` Alexander Aring
2015-04-24  3:38 ` [RFC bluetooth-next 00/15] ieee802154: add support for " Varka Bhadram
2015-04-24  5:11   ` Varka Bhadram
2015-04-25 10:06     ` Alexander Aring
2015-04-27  6:51       ` Varka Bhadram [this message]
2015-04-25  6:48   ` Alexander Aring

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=553DDC7F.8020109@gmail.com \
    --to=varkabhadram@gmail.com \
    --cc=alex.aring@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-wpan@vger.kernel.org \
    --cc=phoebe.buckheister@itwm.fraunhofer.de \
    /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.